C++中怎么利用string实现大数减法运算

这期内容当中小编将会给大家带来有关C++中怎么利用string实现大数减法运算,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

创新互联公司是一家集网站建设,山阳企业网站建设,山阳品牌网站建设,网站定制,山阳网站建设报价,网络营销,网络优化,山阳网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

项目要点

1.大数指的是远超long long int的数据

2.将大数用矩阵进行存储,并通过矩阵实现运算

3.本人采用字符串进行存储,应注意char的特点

比如:

char a=161;

cout<<(int)a;

此时会输出-95,而不是161,char类型首个比特位是作为正负号的

减法,此处只做自然数加法,因为存在负整数的话可以使用自然数加法来处理,只需判断正负再看加减即可

运行截图及代码如下

#include#include#includeusing namespace std;#define n 10string dezero(string a)//用来去掉正数前面的0,也就是说可以输入000001类似这样的数字{ long int i; for(i=0;i48) break; } if(i==a.length()) return "0"; a.erase(0,i); return a;}int judge(string a,string b)//判断两个正数的大小{ if(a.length()>b.length()) return 1; if(a.length()b.at(i)) return 1; if(a.at(i)=48&&c2.at(i)<=57) c2.at(i)-=48; if(c2.at(i)>=97&&c2.at(i)<=122) c2.at(i)-=87; } for(i=0;i=48&&c1.at(i)<=57) c1.at(i)-=48; if(c1.at(i)>=97&&c1.at(i)<=122) c1.at(i)-=87; } for(i=0;i=0;i--) { if(c1.at(i)>0) break; } c1.erase(i+1,c1.length()); for(i=0;i=10) c1.at(i)+=87; if(c1.at(i)<10) c1.at(i)+=48; } reverse(c1.begin(),c1.end()); if(j==-1) c1.insert(0,d); return c1;}int main(){ string a,b; while(cout<<"input:"&&cin>>a>>b) { cout<<"output:"<

上述就是小编为大家分享的C++中怎么利用string实现大数减法运算了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


名称栏目:C++中怎么利用string实现大数减法运算
本文URL:http://scyanting.com/article/ghsohc.html