用java求1到30 的阶层和 用方法

阶乘的公式是 n!=n*(n-1)*(n-2)...*2*1 这个公式可以通过一个java的循环来实现,也就是第一种方法。for(int i=number; i>0;i--)这个循环在i=0的时候结束, 而阶乘的结果通过result*=i来计算。public static int compute(int number){ int result=1;for(int i=number;i>0;i--)...
用java求1到30 的阶层和 用方法
具体如下:
public class Demo {
public static void main(String[] args) {
float sum = 0;
for(float i = 1 ; i <= 30 ; i ++)
sum += jiecheng(i);
System.out.println("1到30的阶乘累加和为:"+sum);
}
public static float jiecheng(float num) {
if(num == 1)
return 1;
else
return num*jiecheng(num-1);
}
}

速度采纳,谢谢!2013-04-26
阶乘的公式是
n!=n*(n-1)*(n-2)....*2*1
这个公式可以通过一个java的循环来实现,也就是第一种方法。

for(int i=number; i>0;i--)
这个循环在i=0的时候结束, 而阶乘的结果通过result*=i来计算。
public static int compute(int number)
{
int result=1;

for(int i=number;i>0;i--){
result*=i;
}

return result;
}

public static void main(String[] args)
{
System.out.println(compute(30)); //789912231223232323211
}
第二种是通过递归来实现阶乘。
递归就是方法调用自身, 最终通过一个出口来结束程序的调用。
这个出口要保证程序不出现死循环。
在上面的f(x)- n*f(x-1)这里, 出口就可以设置为
if(1==number)
{return 1;}
代码实现:
public static int cur(int number){
if(number!=0){
return number*cur(number-1);
}else return 1;
}2015-06-07
mengvlog 阅读 6 次 更新于 2025-07-19 08:36:05 我来答关注问题0
檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部