大数问题+算法
凌晨的狼
我的QQ:414768882
展开
-
大数问题+n!
void main() { int a[1000]; int n; //n! int i,j,pos; //pos代表大数阶层的最高位的位置 memset(a,0,sizeof(a)); a[0] = 1; //被乘数初始化 scanf("%d",&n); for(i=1;i { int sum = 0; for(j=0;j { sum += a[j]*原创 2013-05-18 12:45:14 · 2668 阅读 · 0 评论 -
大数问题+最小公倍数
为什么1小时有60分钟,而不是100分钟呢?这是历史上的习惯导致。 但也并非纯粹的偶然:60是个优秀的数字,它的因子比较多。 事实上,它是1至6的每个数字的倍数。即1,2,3,4,5,6都是可以除尽60。 我们希望寻找到能除尽1至n的的每个数字的最小整数。 不要小看这个数字,它可能十分大,比如n=100, 则该数为: 697203752297124771645338089原创 2013-05-18 12:47:11 · 2814 阅读 · 0 评论 -
大数相加 + 方法2
int a[1000],b[1000],c[1001]; void add();void output(); void main() { int i; char a1[1000],b1[1000]; gets(a1);gets(b1); strrev(a1);strrev(b1); for(i=0;a1[i]!='\0';i++) a[i] = a1[i]-'0'; for(i原创 2013-05-18 12:43:23 · 457 阅读 · 0 评论 -
大数相加 + 方法1
void main() { char a[200],b[100],temp[100],temp1; int lena,lenb,i; int sum=0; gets(a); gets(b); strrev(a); strrev(b); lena=strlen(a); lenb=strlen(b); if(lenb > lena) //两个大数进行比较,哪个小存在b数组中,原创 2013-05-18 12:44:00 · 538 阅读 · 0 评论 -
大数问题,两大数相乘 +方法1
int mul[1000]; int a1[100],b1[100]; int lena,lenb; void output() //输出结果 { int i,pos; for(i=999;i>=0;i--) if(mul[i]!=0) {pos = i; break;} for(i=pos;i>=0;i--) printf("%d",mul[i]); printf("原创 2013-05-18 12:44:42 · 643 阅读 · 0 评论