您的位置:首页 > 编程语言 > Java开发

Java_whilefor-->计算1!+2!+3!+..+10!

2018-01-24 11:45 363 查看
计算1!+2!+3!+..+10!(这个题我没有完成,得到了错误答案)

错误的解题思路:先思考单个的阶乘该如何实现,乘法计算的多次操作通过for循环来实现

以3的阶乘为例 3!

for (int n = 1; n <=3; n++) {
MultSum *= n;
}
接下来以3的阶乘为例,变为n的阶乘,再把10个阶乘相加
public class Test {

public static void main(String[] args) {
// TODO Auto-generated method stub
// 计算1!+2!+3!+..+10! wrong answer
int MultSum = 1;
int Sum = 0;
for (int m = 1; m <= 10; m++) {
for (int n = 1; n <= m; n++) {
MultSum *= n;
}
Sum+=MultSum;
}
System.out.println(Sum);
}
}
得到的结果是这个错误答案:1444231215

百度之后整理得到了正确答案,但我还是有点不明白

整体代码如下:TestWhileFor04.java

public class TestWhileFor04 {

public static void main(String[] args) {
// TODO Auto-generated method stub
// 计算1!+2!+3!+..+10!仍有疑问
int MultSum = 1;
int Sum = 0;
for (int n = 1; n <= 10; n++) {
MultSum *= n;
Sum += MultSum;
}
System.out.println(Sum);
}
}
只用了一个for循环得到了正确答案:4037913
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐