求1的阶乘+2的阶乘+...+10的阶乘

求:1!+2!+3!+…+10!

阶乘:概念不多说,看看例子就懂咯
0的阶乘是1 即 0!=1
n的阶乘是:n*(n-1)*(n-2)…*1

例如:5的阶乘
5!=5✖4✖3✖2✖1=120

【例题】:1!+2!+3!+…+10!

1!=1
2!=1✖2
3!=1✖2✖3
4!=1✖2✖3✖4
5!=1✖2✖3✖4✖5
6!=1✖2✖3✖4✖5✖6
7!=1✖2✖3✖4✖5✖6✖7
8!=1✖2✖3✖4✖5✖6✖7✖8
9!=1✖2✖3✖4✖5✖6✖7✖8✖9
10!=1✖2✖3✖4✖5✖6✖7✖8✖9✖10

先来看看单个的阶乘怎么求:
例如:
求5的阶乘

package com.jinglan.loop;
public class Demo01 {
    
    
	public static void main(String[] args) {
    
    
//阶乘
		//5!=5*4*3*2*1
		int num5=1;
		for(int num=1;num<=5;num++) {
    
    
			num5=num5*num;
		}
		System.out.println("5的阶乘是:"+num5);
}
}

运行结果:
在这里插入图片描述

利用循环嵌套来解决1!+2!+3!+…+10!

package com.jinglan.loop;

public class FactorialSum {
    
    
	public static void main(String[] args) {
    
    
		/*
		 * 求1!+2!+3!+...+10!的值 利用循环嵌套的原理: 外层循环控制和运算 内层循环控制阶乘运算
		 */
		int sum = 0;// 定义sum用来记住和
		int f = 1;// 定义f记住阶乘计算的结果
		for (int i = 1; i <= 10; i++) {
    
    // 外层循环控制和运算
			f = 1;//每次循环结束之后,将f初始化
			for (int j = 1; j <= i; j++) {
    
    // 内层循环控制阶乘运算
				f = f * j;// 存放阶乘计算的结果
			}
			sum = sum + f;
		}
		System.out.println("1!+2!+3!+...+10!的结果是:" + sum);
	}

}

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/muyuxifeng/article/details/112909726
今日推荐