欢迎来到天天文库
浏览记录
ID:47522817
大小:31.00 KB
页数:4页
时间:2020-01-13
《信息学奥赛一本通算法(C++版)基础算法_高精度计算》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、....信息学奥赛一本通算法(C++版)基础算法:高精度计算高精度加法(大位相加)#includeusingnamespacestd;intmain(){chara1[100],b1[100];inta[100],b[100],c[100];//a,b,c分别存储加数,加数,结果intlena,lenb,lenc,x,i;memset(a,0,sizeof(a));//数组a清零memset(b,0,sizeof(b));//数组b清零memset(c,0,sizeof(c));//数组c清零//gets(a1);//gets
2、(b1);//getchar();while(scanf("%s%s",&a1,&b1)!=EOF){lena=strlen(a1);lenb=strlen(b1);for(i=0;i<=lena;i++)a[lena-i]=a1[i]-'0';//将数串a1转化为数组a,并倒序存储//a[i]=a1[lena-i-1]-48;for(i=0;i<=lenb;i++)b[lenb-i]=b1[i]-'0';//将数串a1转化为数组a,并倒序存储//b[i]=b1[lenb-i-1]-48;lenc=1;//lenc表示第几位x=0;//x是进位while(
3、lenc<=lena
4、
5、lenc<=lenb){c[lenc]=a[lenc]+b[lenc]+x;//第lenc位相加并加上次的进位x=c[lenc]/10;//向高位进位c[lenc]%=10;//存储第lenc位的值lenc++;//位置下标变量}c[lenc]=x;if(c[lenc]==0)lenc--;//处理最高进位for(i=lenc;i>=1;i--)cout<usingnamespacestd
6、;intmain(){charn[256],n1[256],n2[256];inta[256],b[256],c[256];intlena,lenb,lenc,i;memset(a,0,sizeof(a));memset(b,0,sizeof(b));memset(c,0,sizeof(c));while(scanf("%s%s",&n1,&n2)!=EOF)//n1为被减数,n2为减数{if(strlen(n1)7、8、(strlen(n1)==strlen(n2)&&strcmp(n1,n2)<0))//strcmp()为字符串比较函9、数,当n1==n2,返回0;n1>n2时,返回正整数;n110、)(n2[i]-'0');//减数放入数组b中i=1;while(i<=lena11、12、i<=lenb){if(a[i]1))lenc--;//最高位的0不输出for(i=lenc;i>=1;i--)cout<13、就要练好牙,是羊就要练好腿。什么是奋斗?奋斗就是每天很难,可一年一年却越来越容易。不奋斗就是每天都很容易,可一年一年越来越难。能干的人,不在情绪上计较,只在做事上认真;无能的人!不在做事上认真,只在情绪上计较。拼一个春夏秋冬!赢一个无悔人生!早安!—————献给所有努力的人.word格式编辑
7、
8、(strlen(n1)==strlen(n2)&&strcmp(n1,n2)<0))//strcmp()为字符串比较函
9、数,当n1==n2,返回0;n1>n2时,返回正整数;n110、)(n2[i]-'0');//减数放入数组b中i=1;while(i<=lena11、12、i<=lenb){if(a[i]1))lenc--;//最高位的0不输出for(i=lenc;i>=1;i--)cout<13、就要练好牙,是羊就要练好腿。什么是奋斗?奋斗就是每天很难,可一年一年却越来越容易。不奋斗就是每天都很容易,可一年一年越来越难。能干的人,不在情绪上计较,只在做事上认真;无能的人!不在做事上认真,只在情绪上计较。拼一个春夏秋冬!赢一个无悔人生!早安!—————献给所有努力的人.word格式编辑
10、)(n2[i]-'0');//减数放入数组b中i=1;while(i<=lena
11、
12、i<=lenb){if(a[i]1))lenc--;//最高位的0不输出for(i=lenc;i>=1;i--)cout<13、就要练好牙,是羊就要练好腿。什么是奋斗?奋斗就是每天很难,可一年一年却越来越容易。不奋斗就是每天都很容易,可一年一年越来越难。能干的人,不在情绪上计较,只在做事上认真;无能的人!不在做事上认真,只在情绪上计较。拼一个春夏秋冬!赢一个无悔人生!早安!—————献给所有努力的人.word格式编辑
13、就要练好牙,是羊就要练好腿。什么是奋斗?奋斗就是每天很难,可一年一年却越来越容易。不奋斗就是每天都很容易,可一年一年越来越难。能干的人,不在情绪上计较,只在做事上认真;无能的人!不在做事上认真,只在情绪上计较。拼一个春夏秋冬!赢一个无悔人生!早安!—————献给所有努力的人.word格式编辑
此文档下载收益归作者所有