博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
高精度减法
阅读量:5120 次
发布时间:2019-06-13

本文共 1052 字,大约阅读时间需要 3 分钟。

学习耗时大约15分钟,个人认为原理较简单,高精度算法实际上还是相当于把小学学的代数知识给程序化了。

1 #include
2 #include
3 #define MAXLEN 110 4 using namespace std; 5 int main(){ 6 int a[MAXLEN], b[MAXLEN], c[MAXLEN], lena, lenb, lenc,i;//存储减数被减数及他们的长度 7 char n[MAXLEN], n1[MAXLEN], n2[MAXLEN];//字符串形式的减数和被减数 8 memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); 9 memset(c,0,sizeof(c)); 10 scanf("%s%s",n1,n2) ;//输入减数和被减数 11 //strcmp()为字符串比较函数,当n1 ==n2,返回012 // n1>n2时,返回正整数,n1
<= lena - 1; i++) a[lena - i] = n1[i] -'0';//被减数放入a数组23 for(i = 0;i <= lenb - 1; i++) b[lenb-i]=n2[i] - '0';//减数放入b数组24 i = 1;25 while(i <= lena || i<= lenb){26 if(a[i] < b[i]){27 a[i] +=10;//不够减则向高位借1当10 28 a[i + 1]--;29 }30 c[i] = a[i] - b[i];//对应位相减 31 i++;32 }33 lenc = i;34 while((c[lenc] == 0) && (lenc > 1)) lenc--;//最高位上0不输出 35 for(i = lenc;i >= 1; i--) cout << c[i];//输出结果 36 cout<

 

转载于:https://www.cnblogs.com/wwcjj/p/8280882.html

你可能感兴趣的文章
zabbix3.0.4 部署之三 (LNMP > Mysql 安装)
查看>>
time模块
查看>>
个人对JS原型链的一些理解(prototype、__proto__)
查看>>
高可用架构的6大常规方案【转】
查看>>
Linux命令:pigz多线程压缩工具【转】
查看>>
如何解决在GDI画图中,多次修改画笔的颜色
查看>>
matlab调试补充总结
查看>>
【Python】python 2 map() reduce()
查看>>
BIO、NIO和AIO的区别(简明版)
查看>>
通过minicom传送文件的相关配置及使用方法
查看>>
new Date().getTime()和System.currentTimeMillis()的区别
查看>>
UML面向对象分析与设计试题2008-B卷
查看>>
QTP 通过URL地址下载文件到本地(转)
查看>>
vs2013 密钥
查看>>
hadoop优化问题
查看>>
python基础(十二):变量类型
查看>>
百度地图JSSDK使用小实例
查看>>
Windows10安装anaconda
查看>>
一些js小知识点整理
查看>>
Linux -- setfacl
查看>>