求大神给个C语言大数阶乘的程序,要有注释的!
来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/29 05:43:21
求大神给个C语言大数阶乘的程序,要有注释的!
对于求大整数的阶乘,可以采用分段相乘的方法,其理论基础是加法的分配律,乘法的分配律.
for exmaple :123456789*123=123*(123*10^5+56789)=123*123*10^5+123*56789;
如果我们用一个数组result[0]=56789,result[1]=123,那么123456789*123就是123*result[0]%10^6和result[1]*123+result[0]/10^6构成的一个数,另result[0]=123*result[0]%10^6,result[1]=result[1]*123+result[0]/10^6,则这个数就是result[1]result[0];
#include
int main()
{
int n,j,i,t,p;
int result[16000];
while(scanf("%d",&n)!=EOF){
t=p=0;result[0]=1; //t记录result中所存数的个数
for(j=1;j=0;i--)
printf("%05d",result[i]);//s[i]不足5位,说明需补0 也说明result[i]在对100000取余的时候去掉了前导0,所以这里要加上
printf("\n");
}
return 0;
}
for exmaple :123456789*123=123*(123*10^5+56789)=123*123*10^5+123*56789;
如果我们用一个数组result[0]=56789,result[1]=123,那么123456789*123就是123*result[0]%10^6和result[1]*123+result[0]/10^6构成的一个数,另result[0]=123*result[0]%10^6,result[1]=result[1]*123+result[0]/10^6,则这个数就是result[1]result[0];
#include
int main()
{
int n,j,i,t,p;
int result[16000];
while(scanf("%d",&n)!=EOF){
t=p=0;result[0]=1; //t记录result中所存数的个数
for(j=1;j=0;i--)
printf("%05d",result[i]);//s[i]不足5位,说明需补0 也说明result[i]在对100000取余的时候去掉了前导0,所以这里要加上
printf("\n");
}
return 0;
}
求大神给个C语言大数阶乘的程序,要有注释的!
C语言程序看不懂,求大神注释语句,讲一下思路.好的再给分.
求matlab大神给下面一个源程序给个详细的注释,就是程序每一步的操作,速求
求大数阶乘的快速算法!急
C语言中求阶乘的累加.
n的阶乘分之一算法求高手给个1到N的各阶乘分之一的和的C语言算法
C语言大数阶乘运算求一份计算大数阶乘的代码 从1!一直算到40!不需要相加 输出的时候 是1!= %d\n = %d\n
求大神写个输入三角形的三边求面积的C语言程序
这个C语言程序是求三角形面积的,其中有个错误求大神指出
用c语言编写程序,求大数加,大数减,大数积,大数除.写四个程序.
求大神帮写一个C语言的程序
计算1000的阶乘求能计算大数阶乘的程序,最好有源代码...aini24680。但是代码编译不通过啊。我补上#inclu