永发信息网

这个用java求1!+2!....+10!输出的结果对了吗?

答案:6  悬赏:20  手机版
解决时间 2021-04-13 05:56
  • 提问者网友:ミ烙印ゝ
  • 2021-04-12 19:06
这个用java求1!+2!....+10!输出的结果对了吗?
最佳答案
  • 五星知识达人网友:北城痞子
  • 2021-04-12 20:11
结果不对 正确的结果应该是 1!+2!+3!+...10!=4037913 你的代码应该改成

for(int A=1;A<11;A++)
{
B=B*A;
sum+=B;
}
全部回答
  • 1楼网友:愁杀梦里人
  • 2021-04-13 02:08
顺了一下,感觉没什么问题,但是sum=+B是不是写错了,应该是sum+=B吧
  • 2楼网友:骨子里都是戏
  • 2021-04-13 00:41
不对的,你把你的“sum=+B”改成“sum+=B”就OK!
  • 3楼网友:孤独的牧羊人
  • 2021-04-12 23:08
package dao;

public interface Indexer {
    T index(V v);
}
//实现类
package dao;
import java.math.*;

public class Factorial implements Indexer {
    public BigDecimal index(Integer integer) {
        int x=1;
        for (int i = 1; i <= integer;i++)
            x*=i;
        return new BigDecimal(x);
    }
    public static void main(String...args){
        Indexer F = new Factorial();
        BigDecimal b = new BigDecimal(0L);
        for (int i = 1; i <11; i++) {
            b=b.add(F.index(i));
        }
        System.out.println(b);
    }
}
  • 4楼网友:山河有幸埋战骨
  • 2021-04-12 21:36

不对

你算的结果是1*1+2*1+3*1+...+10*1,不是阶乘.
  • 5楼网友:長槍戰八方
  • 2021-04-12 21:20
public class Test {
public static void main(String[] args) {
int i = 1;
int sum = 0;
for (int j=1; j <= 10; j++) {
i = i * j;
sum = sum + i;
}
System.out.println(sum);
}
}
正确结果:4037913
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯