java给定正整数n(1 < n < 12),求不大于n。的正整数的阶乘的和(即求1!+2!+3!+...+n!),输出阶乘的和。
时间: 2023-09-30 17:08:40 浏览: 68
好的,这个问题与上一个问题类似,只是加了一个限制条件,可以直接在循环中加上判断条件。以下是 Java 代码实现:
```java
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
int n = 10; // 假设 n = 10
BigInteger sum = BigInteger.ZERO; // 初始化阶乘和为0
BigInteger factorial = BigInteger.ONE; // 初始化当前阶乘为1
for (int i = 1; i <= n; i++) {
if (i > 1 && i > n) {
break; // 如果当前数大于n,跳出循环
}
factorial = factorial.multiply(BigInteger.valueOf(i)); // 计算当前阶乘
sum = sum.add(factorial); // 将当前阶乘加到阶乘和中
}
System.out.println(sum); // 输出阶乘和
}
}
```
这里加了一个判断条件 `if (i > 1 && i > n)`,如果当前数大于n,就跳出循环。注意,由于题目中规定了1 < n < 12,因此判断条件中可以加上 `i > 1` 的条件,避免计算1的阶乘。
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)