使用循环结构计算1到10这10个整数的阶乘和。(p212)(要求调用课本212页的BigInteger factorial())
时间: 2024-12-17 22:41:15 浏览: 3
在Java中,我们可以使用循环结构(如for循环)结合自定义的`factorial()`方法来计算1到10这10个整数的阶乘。由于Java内置的`int`类型的阶乘计算会遇到溢出的问题,所以我们需要借助`java.math.BigInteger`类来处理大整数。按照P212的内容,假设已经定义了一个名为`factorial BigInteger`的方法,其接受一个`BigInteger`参数并返回其阶乘。
以下是一个示例代码:
```java
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
BigInteger result; // 结果变量
for (int i = 1; i <= 10; i++) {
result = factorial(i); // 调用阶乘方法
System.out.printf("%d! = %s\n", i, result);
}
}
// 自定义的阶乘方法,接收BigInteger参数
public static BigInteger factorial(BigInteger n) {
BigInteger fact = BigInteger.ONE;
while (n.compareTo(BigInteger.ZERO) > 0) {
fact = fact.multiply(n);
n = n.subtract(BigInteger.ONE);
}
return fact;
}
}
```
运行上述代码,你会看到1到10每个数字的阶乘及其结果。
阅读全文