大数相乘模板
发布时间:2020-12-14 03:24:56 所属栏目:大数据 来源:网络整理
导读:?自己以前的写的一个两个大数数相乘 #includestdio.h#includestring.husing namespace std;#define N 2000char z[N],a[1000],b[1000],c[N];int l1,l2;void jf(){ int i; for(i=N-1; i=0; i--) { if(c[i]+z[i]-969) { z[i-1]=z[i-1]+1; z[i]=z[i]+c[i]-48-10;
?自己以前的写的一个两个大数数相乘 #include<stdio.h> #include<string.h> using namespace std; #define N 2000 char z[N],a[1000],b[1000],c[N]; int l1,l2; void jf() { int i; for(i=N-1; i>=0; i--) { if(c[i]+z[i]-96>9) { z[i-1]=z[i-1]+1; z[i]=z[i]+c[i]-48-10; } else z[i]=c[i]+z[i]-48; } return ; } void cf(int g,char A) { int i,j,cs,k; for(i=l1-1; i>=0; i--) { memset(c,'0',sizeof(c)); cs=(a[i]-'0')*(A-'0'); for(j=l1-1-i+g,k=N-1; j>0; j--,k--) c[k]='0'; while(cs!=0) { c[k]=cs%10+48; cs=cs/10; k--; } jf(); } return ; } int main() { int i,k; while(gets(a)) { gets(b); memset(z,sizeof(z)); l1=strlen(a); l2=strlen(b); for(i=l2-1; i>=0; i--) cf(l2-1-i,b[i]); for(k=0; k<=N-1; k++) if(z[k]!='0') break; if(k==N) printf("0"); else for(; k<=N-1; k++) printf("%c",z[k]); printf("nn"); } return 0; } 下面的这个是大数的阶乘 #include<bits/stdc++.h> using namespace std; #define N 1000 char z[N],l2; int fz() { int k=0; for(int i=0; i<=N-1; i++) { if(z[i]==0) continue; else a[k++]=z[i]; } return k; } void jf() { int i; for(i=N-1; i>=0; i--) { if(c[i]+z[i]-96>9) { z[i-1]=z[i-1]+1; z[i]=z[i]+c[i]-48-10; } else z[i]=c[i]+z[i]-48; } return ; } void cf(int g,k--) c[k]='0'; while(cs!=0) { c[k]=cs%10+48; cs=cs/10; k--; } jf(); } return ; } void cfsc() { int k; for(k=0; k<=N-1; k++) if(z[k]!='0') break; if(k==N) printf("0"); else for(; k<=N-1; k++) printf("%c",z[k]); printf("n"); } int main() { int i,k; int n,t; scanf("%d",&t); while(t--) { scanf("%d",&n); memset(z,sizeof(z)); z[N-1]='1'; for(int dt=1; dt<=n; dt++) { l1=fz(); itoa(dt,b,10); memset(z,sizeof(z)); l2=strlen(b); for(i=l2-1; i>=0; i--) cf(l2-1-i,b[i]); } cfsc(); } return 0; } 原创请标明出处?http://blog.csdn.net/xky140610205?viewmode=contents (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 理解 Delphi 的类(十一) - 深入类中的方法[10] - 构造方法与
- perl6 绑定中缀操作符
- Exercise for Chapter 7 of "Intermediate Perl"
- Delphi TWinControl 类(1)
- Go 实现 自动检索 API 错误码代码行 并 打印成文档,例 mar
- delphi – 为什么Indy Project HttpClient Get()会在一些在
- Delphi ASIO VST和MiniHost的Midi时序问题
- Delphi 2010 新增功能之: 手势编程[2] - 通过 OnGesture 识
- 关于在delphi7中安装ocx后,控件未被显示在控件面板上的注意
- Go 指针相关