首页 > 编程知识 正文

阶乘求和公式高中数学,python如何阶乘求和

时间:2023-05-05 06:53:22 阅读:267660 作者:581

求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字(n不超过20)。

本题思路很清晰,唯一值得注意的是他的数据存储问题,分析题目,可以知道涉及数据类型为整型,我们不能使用double这类的浮点型,因为,double在存储数据并不是整的,比如存储0,double实际存储为0.00000001,这就导致了我们使用浮点型计算出来的有误差!所以,我们只能采用整型。

但是不能使用int,long int这类,因为他们的存储范围不足以存储sn的值。

此时,long long就派上了用场,当然你也可以用unsigned long long。
值得一提的是他们的输入输出格式,long long:%lld; unsigned long long :%llu。

具体的范围和格式说明请百度搜索,这边我推荐一个:https://blog.csdn.net/mafuli007/article/details/7325510
下面是此题的解,不唯一。

#include<stdio.h>int main( void ) { int n; long long Sn = 0; scanf("%d", &n); for( long long num = 1, num1 = 1; n > 0; n-- ){ Sn += num *num1; num1 *= num; num++; } printf("%lldn", Sn); return 0;}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。