java里1到10的阶乘相加编程方法如下:
public class Factorial{ //类
public static void main(String [] args){ //主方法
int a=1 //定义一个变量a
int sum=0 //定义一个变量sum,把和存放在sum里
for(int i=1i<11i++){ //做1-11循环
a=1 //每次a都从1开始
for(int j=1j<=ij++){ //求每个数的阶乘
a=a*j
}
sum=a+sum //每个数的阶乘求好后都加入sum
}
System.out.println(sum) //输出和sum
}
}
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
阶乘的公式是n!=n*(n-1)*(n-2)....*2*1
这个公式可以通过一个java的循环来实现,也就是第一种方法。
for(int i=numberi>0i--)
这个循环在i=0的时候结束, 而阶乘的结果通过result*=i来计算。
public static int compute(int number)
{
int result=1
for(int i=numberi>0i--){
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
}
for的嵌套循环的:
public class Practice5 {public static void main(String[] args) {
long sum = 0, c
for (int i = 1 i <= 20 i++) {
c = 1
for (int b = 1 b <= i b++) {
c *= b
}
sum += c
}
System.out.println("1到20的阶乘和等于" + sum)
}
}
单个for循环的:
public class Practice5 {public static void main(String[] args) {
long sum = 0, c = 1
for (int i = 1 i <= 20 i++) {
c *= i
sum += c
}
System.out.println("1到20的阶乘和等于" + sum)
}
}