加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

大数计算_减法

发布时间:2020-12-14 04:11:26 所属栏目:大数据 来源:网络整理
导读:/*limit:ab0*/#includeiostream#includestringusing namespace std;string sub(string a,string b){int len_a=a.size(),len_b=b.size();string c;int len_c=0;bool flag=false;while(len_b0){if(flag)a[len_a]=a[--len_a]-1;else len_a--;char temp=a[len_a]
/*limit:a>b>0*/
#include<iostream>
#include<string>
using namespace std;

string sub(string a,string b)
{
	int len_a=a.size(),len_b=b.size();
	string c;
	int len_c=0;
	bool flag=false;
	while(len_b>0){
		if(flag)a[len_a]=a[--len_a]-1;
		else len_a--;
		char temp=a[len_a]-b[--len_b];
		if(temp<0){temp+=58;flag=true;}
		else {temp+=48;flag=false;}
		c+=temp;
	    len_c++;
	}
	while(len_a>0){
		if(flag)a[len_a]=a[--len_a]-1;
		else len_a--;
		if(a[len_a]<48){a[len_a]+=10;flag=true;}
		else flag=false;
		c+=a[len_a];
		len_c++;
	}
	while(len_c>1&&c[len_c-1]==48)len_c--;
	string sum;
	for(int i=--len_c;i>=0;i--)
		sum+=c[i];
	return sum;
}
void main()
{
	string a,b;
	while(cin>>a>>b)
		cout<<sub(a,b)<<endl;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读