1. 程式人生 > >1047 Integer Inquiry

1047 Integer Inquiry

spa 長度 amp for pre namespace iostream stdio.h ret

String 大數加法模板

#include<stdio.h>
#include<string>
#include<iostream>
using namespace std;

//高精度加法
//只能是兩個正數相加
string add(string str1,string str2)//高精度加法
{
    string str;

    int len1=str1.length();
    int len2=str2.length();
    //前面補0,弄成長度相同
    if(len1<len2)
    {
        for(int i=1
;i<=len2-len1;i++) str1="0"+str1; } else { for(int i=1;i<=len1-len2;i++) str2="0"+str2; } len1=str1.length(); int cf=0; int temp; for(int i=len1-1;i>=0;i--) { temp=str1[i]-0+str2[i]-0+cf; cf=temp/10; temp%=10
; str=char(temp+0)+str; } if(cf!=0) str=char(cf+0)+str; return str; } int main() { int T; scanf("%d",&T); while(T--) { string sum="0"; string str1; while(cin>>str1) { if(str1=="0")break; sum=add(sum,str1); } cout
<<sum<<endl; if(T>0)cout<<endl; } return 0; }

1047 Integer Inquiry