大数相加的C++简单实现
来源:互联网 发布:重庆国际物流数据 编辑:程序博客网 时间:2024/06/05 18:14
#include <iostream>#include <string>#include <vector>using namespace std;void addsum(vector<int>v1,vector<int>v2){int size1=v1.size(),size2=v2.size();vector<int>vvs;int y=size1-1;for (int k=size2-1;k>=0;k--,y--){int ssum;ssum=v1[y]+v2[k];if (ssum>=10){vvs.push_back(ssum%10);v1[y-1]+=ssum/10;}else{vvs.push_back(ssum);}}for (int l=size1-size2-1;l>=0;l--){if (v1[l]>=10){if (l!=0){v1[l-1]+=v1[l]/10;vvs.push_back(v1[l]%10);}else{vvs.push_back(v1[l]%10);vvs.push_back(v1[l]/10);}}else{vvs.push_back(v1[l]);}}vector<int>result;vector<int>::reverse_iterator ri=vvs.rbegin();for (;ri!=vvs.rend();ri++){ result.push_back(*ri);}vector<int>::iterator it=result.begin();while(it!=result.end()){cout<<*it;++it;}cout<<endl;}void sum(string s1,string s2){vector<int>vi1,vi2;int size1=s1.size();int size2=s2.size();for (int i=0;i<size1;i++){vi1.push_back(s1[i]-'0');}for (int j=0;j<size2;j++){vi2.push_back(s2[j]-'0');}vector<int>vs;if (size1==size2){for (int k=size1-1;k>=0;k--){int sum;sum=vi1[k]+vi2[k];if (vi1[k]+vi2[k]>=10){if (k!=0){vi1[k-1]+=sum/10;vs.push_back(sum%10);}else{vs.push_back(sum%10);vs.push_back(sum/10);}}else{vs.push_back(sum);}}}vector<int>rresult;vector<int>::reverse_iterator rii=vs.rbegin();for (;rii!=vs.rend();rii++){rresult.push_back(*rii);}vector<int>::iterator iit=rresult.begin();while(iit!=rresult.end()){cout<<*iit;++iit;}cout<<endl;if (size1>size2){addsum(vi1,vi2);}if (size1<size2){addsum(vi2,vi1);}}int main(){string v1,v2;cin>>v1>>v2;sum(v1,v2);return 0;}
0 0
- 大数相加的简单实现
- 大数相加(C实现
- 简单的大数相加的实现
- 简单的大数相加的实现
- 大数相加的C++简单实现
- C实现两个大数相加
- C++实现的一个简单两个大数相加程序!
- 大数相加算法的实现
- C/C++和JAVA 实现大数相加
- 简单大数相加
- C语言大数相加
- 【c++】大数相加
- c语言 大数相加
- C语言大数相加
- 大数相加 C/C++
- C语言版大数相加
- [C++]大数相加-string
- C语言---大数相加
- 《C/C++学习指南(语法篇)》 - 关于本书
- Visual Studio 2012出现“无法访问T-SQL组件和安装了不兼容伯 DacFx版本”的解决办法
- QT连接Sqlite数据库,中文路径出错
- 位运算求两个整数的平均值
- Unity3d C# HttpWebRequest 异步下载文件
- 大数相加的C++简单实现
- jQuery的实现原理
- Java值传递和引用传递
- SAP增加BOM后,下订单ZCB0打印出错,请大侠帮忙解答,谢谢!
- Android实战技巧:如何在ListView中嵌套ListView
- c++中“引用”
- fork()函数详解
- Eclipse操作小技巧 , 快捷键
- 自怨自艾