Loading

一个for循环计算阶乘和

计算1! + 2! + 3! + … + n!

平常我们都习惯了用两个for循环或者是定义一个fact(i)

但fact函数中的实现也是一个for循环

所以实质上都是两个for循环

一个for计算一个数的阶乘

一个for进行加和

但是阶乘的计算具有连续性, 即一个数的阶乘只需要在前一个数的阶乘的基础上再乘上一个数

即4的阶乘等于3的阶乘乘以4

所以可以用一个for循环解决问题

int sum = 0;
int item = 1;
for(int i = 1; i <= n; i++){
    item = item * i;
    sum += item;
}

如此即可

在前面一个阶乘已经算出来的基础上, 只需要乘以一个更新过的i, 就可以得到下一个数的阶乘

posted @ 2022-10-23 22:16  EEvinci  阅读(146)  评论(0编辑  收藏  举报