java编写一个程序求1!+2!+3!+…n! 首先由用户输入一个整数n,然后程序计算上式前n项的和。例如:用户输入2,则程序计算1的阶乘与2的阶乘的和,输出结果为:3。
时间: 2024-10-22 15:09:46 浏览: 17
Java递归求和1+2+3+...+n实例详解
5星 · 资源好评率100%
在Java中,你可以使用递归函数来实现这个需求,因为阶乘的定义非常适合递归。以下是简单的Java代码示例:
```java
import java.util.Scanner;
public class FactorialSum {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数 n:");
int n = scanner.nextInt();
long sum = factorialSum(n);
System.out.println("1! + 2! + ... + " + n + "! 的和为: " + sum);
}
// 计算阶乘的递归函数
public static long factorialSum(int num) {
if (num == 0 || num == 1) { // 阶乘的基本情况
return 1;
} else {
return num * factorialSum(num - 1); // 递归调用
}
}
}
```
在这个程序中,`factorialSum`函数通过递归的方式计算阶乘,并累加到`sum`变量中。当输入的数`n`等于0或1时,阶乘值就是1,这是递归终止条件。
阅读全文