java用do-while求阶乘和
时间: 2023-05-31 17:03:13 浏览: 93
```java
import java.util.Scanner;
public class FactorialSum {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个正整数:");
int n = input.nextInt();
int i = 1, fact = 1, sum = 0;
do {
fact *= i; // 计算阶乘
sum += fact; // 累加阶乘
i++;
} while (i <= n);
System.out.println("1! + 2! + ... + " + n + "! = " + sum);
}
}
```
运行结果:
```
请输入一个正整数:5
1! + 2! + ... + 5! = 153
```
相关问题
在java中用do-while语句计算1到10的阶乘之和
在Java中,我们可以使用do-while循环结合递归来计算从1到10的阶乘之和。首先,我们需要创建一个函数来计算阶乘,然后在do-while循环中不断累加阶乘结果,直到达到11(因为阶乘是从1开始计数的)。这里是一个示例:
```java
public class FactorialSum {
private static int factorial(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
public static void main(String[] args) {
int sum = 0;
int i = 1;
do {
sum += factorial(i);
i++;
} while (i <= 10);
System.out.println("1到10的阶乘之和是: " + sum);
}
}
```
在这个程序中,`factorial`函数通过递归实现了阶乘计算,而do-while循环则用于控制迭代次数,并将每个阶乘值累加到`sum`变量上。
用Java的do-while语句写一个从1!到10!的阶乘和
```
public class FactorialSum {
public static void main(String[] args) {
int i = 1;
int factorial = 1;
int sum = 0;
do {
factorial *= i;
sum += factorial;
i++;
} while (i <= 10);
System.out.println("1! + 2! + 3! + ... + 10! = " + sum);
}
}
```
阅读全文