用java编写一个程序求1!+2!+....10!

2025-02-24 16:11:22
推荐回答(3个)
回答1:

用Java编程写程序求1!+2!+....10!,只需用两个循环层,第一个循环是阶乘值相加,第二个循环是获取阶乘值,如下:

public class TestD {
public static void main(String[] args){

//1!+2!+3!+···+10!就是1到10阶乘值的和
int sum=0;
//循环10次
for(int x=1;x<=10;x++){
//阶乘初始值设置为1
int jiecheng=1;
//循环x次
for(int y=1;y<=x;y++){
//阶乘上一个值和当前y值相乘重新赋值给阶乘
jiecheng=y*jiecheng;
}
//各个阶乘值相加
sum+=jiecheng;
}
//1~10阶乘值求和
System.out.println("1!+2!+3!+···+10!="+sum);
}
}

结果:
1!+2!+3!+···+10!=4037913

回答2:

public class jiecheng {

/**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub


long s;
s=0;
for(int i=1;i<=10;i++)
{
s+=f(i);
System.out.print(f(i)+"\r");
}
System.out.print("s=\r"+s);
}
public static int f(int x){
if(x<=1){
return 1;
}
else{
return x*f(x-1);
}

}
}

回答3:

  1. 我只贴给你关键代码,想要更多自己去学。这个编程方式叫递归,阶乘也是入门问题。

  2. public int factorial(int n){
        if(n == 0) return 1;

  3. return n * factorial(n - 1);
  4. }
  5. }