tceic.com
简单学习网 让学习变简单
当前位置:首页 >> 学科竞赛 >>

高精度加法--(万进制)


#include<stdio.h> #include<stdlib.h> #include<string.h> #define base 10000 char a[25010],b[25010]; int add[25610],x[25610],y[25610]; int flag=1; void out (int clen) { int p,

i; for(i=clen;i>=1;i--) { if(add[i]<1000&&flag==0) { p=add[i]; if(p==0)p++; while(p<1000) { printf("0");p*=10;} printf("%d",add[i]); } else printf("%d",add[i]); flag=0; } puts(""); } int main() { int i,j,k,m,n,p=0,ai=0,bi=0,count=0; char c;i=0; c=getchar(); while(c!=' ') { a[i++]=c; c=getchar(); } gets(b); int alen,blen,clen; alen=strlen(a); blen=strlen(b); memset(x,0,sizeof(x)); memset(y,0,sizeof(y)); m=alen-1;

int an=alen/4; int ap=alen%4; for(i=1;i<=an;i++) { k=1000; for(j=3;j>=0;j--){ x[i]+=(a[m-j]-'0')*k;k/=10;} m-=4; } k=1; if(ap) { for(j=1;j<ap;j++)k*=10; for(j=ap-1;j>=0;j--){ x[i]+=(a[m-j]-'0')*k;k/=10;} } int bn=blen/4; int bp=blen%4; m=blen-1; for(i=1;i<=bn;i++) { k=1000; for(j=3;j>=0;j--){ y[i]+=(b[m-j]-'0')*k;k/=10;} m-=4; } k=1; if(bp) { for(j=1;j<bp;j++)k*=10; for(j=bp-1;j>=0;j--){ y[i]+=(b[m-j]-'0')*k;k/=10;} } if(ap)ai=1; if(bp)bi=1; alen=an+ap; blen=bn+bp; clen=alen>blen?alen:blen; memset(add,0,sizeof(add)); for(i=1;i<=clen;i++) { count+=x[i]+y[i]; add[i]=count%base; count/=base;

} while(count) { add[++clen]=count; count/=base; } while(!add[clen])clen--; out(clen); system("pause"); return 0; }


推荐相关:

高精度加法--(万进制)

高精度加法--(万进制)_学科竞赛_高中教育_教育专区。高精度加法--(万进制) C语言#include<stdio.h> #include<stdlib.h> #include<string.h> #define base ...


高精度运算(C++)

万进制高精度数的输出问题: 采用万进制来进行高精的加、减、乘三种运算,虽然提高了程序的执行效率,但在输出时却带来了 问题,如在加法示例中的结果从高位到低位...


二进制双精度加法运算

进制精度加法运算_工学_高等教育_教育专区。;A4-1.asm ;二进制精度加法运算 STACK1 STACK1 SEGMENT STACK DW 256 DUP(?) ENDS DATA SEGMENT MES1 DB...


4种常见的动态规划模型

注意:由于此题的数据规模比较大,所以要用到高精度加法,估计最大的数据可以达到 73位,为节约程序时间和空间效率,还采用了万进制高精度加法。参考程序 如下: ...


两位二进制加法

两位二进制加法_数学_自然科学_专业资料。两位二进制加法器的设计,带进位输出,数码管和LED同时显示加数和结果,用一个LED显示进位输出半...


五进制加减法

进制加减法_计算机软件及应用_IT/计算机_专业资料。五进制加减法编号:17 河北工业大学计算机软件技术基础(VC)课程设计报告一、题目: 17 五进制加减法二、设计思路...


十进制加法计数器

燕山大学课程设计说明书 燕山大学课 程设计说明书 题目: 十进制加法计数器 学院(系) : 电气工程学院 年级专业: 学号: 学生姓名: 指导教师 教师职称: 实验师 ...


多字节十进制加法

8051 程序设计实验二 多字节十进制加法 实验目的及要求: 1、掌握 8051 汇编语言...多字节十进制加法 10页 1下载券 微机实验-2(多精度进制... 8页 免费 实...


多字节、多进制加法运算实验报告

若有进位,应向和的最高位字节地址写入01H,这时和 数将比加数或被加数多出一个字节。 2.单字节带符号数加法运算 编程范例: 两个8 位二进制带符号数加法, ...

网站首页 | 网站地图
All rights reserved Powered by 简单学习网 www.tceic.com
copyright ©right 2010-2021。
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@126.com