数学问题--大数的阶乘
来源:互联网 发布:cloudstack 网络 编辑:程序博客网 时间:2024/04/30 08:17
#include <stdio.h>#include <math.h>int factorial(int n) //求阶乘,返回值 是结果值的位数{long a[10000];int i,j,c,m=0; a[0]=1; for(i=1;i<=n;i++) { c=0; for(j=0;j<=m;j++) { a[j]=a[j]*i+c; c=a[j]/10000; a[j]=a[j]%10000; } if(c>0) {m++;a[m]=c;} } printf("%ld",a[m]); for(i=m-1;i>=0;i--) printf("%4.4ld",a[i]);int w=m*4+(int)log10(a[m])+1;return w;} void main(){factorial(20);}
语法:int result=factorial(int n);
参数:
n:
n 的阶乘
返回值:
阶乘结果的位数
这里的方法很简洁,如果你想用字符串的形式,也可以参考我之前一篇文章http://blog.csdn.net/luoluoxiaocainiao/article/details/9879839 里面的Add和Mul函数可以实现阶乘.
- 数学问题--大数的阶乘
- 大数的阶乘问题
- ACM内部函数--数学问题--大数阶乘
- 【大数问题】大数阶乘
- 大数阶乘问题的c++实现
- 阶乘的精确值 大数问题
- 阶乘的精确值 大数问题
- 大数问题:求N的阶乘
- 大数问题:求n的阶乘
- 大数阶乘问题
- 大数阶乘问题
- 大数阶乘问题研究
- 阶乘,大数问题
- 大数阶乘问题
- 大数阶乘问题
- 大数阶乘问题
- ACM大数阶乘问题
- NYOJ 大数阶乘问题
- Service联合Broadcase更新UI
- vs2012编译boost_1_54_0
- Linux内存管理(上)
- 实现Android的消息通知栏
- JAVA的日期应用:Date、DateFormat、Calendar
- 数学问题--大数的阶乘
- 题目1504:把数组排成最小的数-PAT
- 手机游戏制作(开发流程)
- opencv配置方法
- Linux内存管理(下)
- HttpClient和HttpGet 设置参数的优先级
- 百度网站诚信认证现在是个什么情况呢?
- Oracle数据库:NVL()函数 Oracle/PLSQL中的一个函数
- Build.prop部分优化参数