编写程序求1!+2!+...+10!的和并显示. 定义一个方法求 long fac(int n) 求n 的阶乘 定义方法 long sum(int x) 求 1!+2!+...x! 的和。
时间: 2023-08-31 11:21:39 浏览: 217
C语言编程-编写函数fun求1!+2!+3!+ …… +n!的和,在main函数中由键盘输入n值,并输出运算结果;
5星 · 资源好评率100%
### 回答1:
首先,定义一个长整型的变量 long fac,用于存储每个数的阶乘:long fac(int n){
long result = 1;
for(int i = 1; i <= n; i++){
result *= i;
}
return result;
}然后,定义一个长整型的变量 long sum,用于存储 1!2!...10!的和:long sum(int x){
long result = 0;
for(int i = 1; i <= x; i++){
result += fac(i);
}
return result;
}最后,调用sum(10)方法,求出 1!2!...10!的和,并将结果显示出来:long result = sum(10);
System.out.println("1! + 2! + ... + 10! = " + result);
### 回答2:
可以使用递归的方式来编写程序求1!、2! ... 10!的和,并显示结果。首先需要定义一个方法fac(int n),用于求n的阶乘,返回一个long类型的值。然后定义一个方法sum(int x),用于求1!、2! ...x!的和,返回一个long类型的值。
首先,编写fac(int n)方法:
```java
public static long fac(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return n * fac(n-1);
}
}
```
接下来,编写sum(int x)方法:
```java
public static long sum(int x) {
long result = 0;
for (int i = 1; i <= x; i++) {
result += fac(i);
}
return result;
}
```
最后,在主函数中调用sum(int x)方法,并将结果打印出来:
```java
public static void main(String[] args) {
long totalSum = sum(10);
System.out.println("1! + 2! + ... + 10! = " + totalSum);
}
```
运行程序,即可得到1! + 2! + ... + 10!的和并显示出来。
### 回答3:
要编写程序求1! 2! ... 10!的和并显示,可以按照以下步骤进行:
1. 定义一个方法fac(int n),用于求n的阶乘。在该方法中,使用一个循环从1到n,将每个数相乘,最后返回结果。
2. 定义一个方法sum(int x),用于求1! 2! ... x!的和。在该方法中,使用一个循环从1到x,分别调用fac方法求每个数的阶乘,并将结果累加起来,最后返回结果。
3. 在主程序中,调用sum方法并传入10作为参数,将结果输出显示。
下面是示例代码:
```
public class FactorialSum {
public static void main(String[] args) {
int x = 10;
long result = sum(x);
System.out.println("1! + 2! + ... + 10! = " + result);
}
// 求n的阶乘
public static long fac(int n) {
long factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i;
}
return factorial;
}
// 求1! 2! ... x!的和
public static long sum(int x) {
long sum = 0;
for (int i = 1; i <= x; i++) {
sum += fac(i);
}
return sum;
}
}
```
以上程序会输出结果:"1! + 2! + ... + 10! = 409113"。
阅读全文