public class FactorialAndSum {
public int getFactorialAndSum(int number) throws UnSupportParamException {
if (number < 1) {
throw new UnSupportParamException("阶乘求和不允许小于1");
}
if (number == 1) {
return 1;
}
// 求和
int factorialAndSum = 0;
// 阶乘结果
int factorial = 1;
for (int i = 1; i <= number; i++) {
factorial *= i;
factorialAndSum += factorial;
}
return factorialAndSum;
}
public static void main(String[] args) throws UnSupportParamException {
FactorialAndSum factorialAndSum = new FactorialAndSum();
System.out.println(factorialAndSum.getFactorialAndSum(10));
System.out.println(factorialAndSum.getFactorialAndSum(3));
System.out.println(factorialAndSum.getFactorialAndSum(5));
}
}
class UnSupportParamException extends Exception {
public UnSupportParamException(String message) {
super(message);
}
}
算法-阶乘求和
最新推荐文章于 2026-01-07 18:44:27 发布
1948

被折叠的 条评论
为什么被折叠?



