java编写 利用while循环语句,计算1!+2!+3!+…+20!的总和

 我来答
东职小子
2012-07-23 · 超过11用户采纳过TA的回答
知道答主
回答量:67
采纳率:0%
帮助的人:31.7万
展开全部

class Test_08 {

 public static void main(String[] args) {

  long result = 0;

  for (int i = 1; i <= 20; i++) {

   long mul = 1;

   for (int j = 1; j <= i; j++) {

    mul *= j;

   }

   result += mul;

  }

 System.out.println("1!+2!+3!+4!+5!+。。。。+20!=" +result);

 }

}

第二种做法:

class Test_08 {

 public static void main(String[] args) {

  long i;

  long j = 1;

  long sum = 0;

  for (i = 1;i <= 20;i++) {

   j = j * i;

   sum = sum + j;

  }

  System.out.println(sum);

 }

百度网友df5604ebc8a
2011-06-15 · TA获得超过2701个赞
知道大有可为答主
回答量:4883
采纳率:0%
帮助的人:2703万
展开全部
呵呵,你知道阶乘的,他其实就是这样的,比如1/24就可以写成(1/2)*(1/12)这样吧,a=a*(1/i)就可以理解成这样子,第一个是1,第二个就是1*(1/2)结果就是0.5下来呢,就是0.5*(1/3)这个呢就等于是(1/2)*(1/3)也就等于是1/3的阶剩了呀,你说对不,一直循坏到结果,这样理解了吧. 在不理解可以问我,我在线.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
残涛惊梦
2011-06-15 · TA获得超过635个赞
知道小有建树答主
回答量:467
采纳率:50%
帮助的人:252万
展开全部
public class Sum {
public static void main(String args[]){
int i,j,sum=0;r=1;
while(i<=20){
for(j=1;j<=i;j++){
r=r*i;
}
sum+=r;
i++;
}
System.out.println(" "+sum);
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式