您的位置:首页 > 其它

高精度加法模板

2013-04-29 15:18 204 查看
string high_add(string str1, string str2) //传入两个加数,返回结果
{
int len1 = str1.size () ;
int len2 = str2.size () ;

while(len1 < len2)
{
str1 = '0'+ str1 ;
len1 ++ ;
}
while(len2 < len1)
{
str2 = '0' + str2 ;
len2 ++;
}

str1 = '0' + str1 ;
str2 = '0' + str2 ;
for(int i = str1.size () - 1 ; i > 0  ; i--)
{
str1[i] = str1[i] + str2[i] - '0' ;
if(str1[i] - '0' > 9)
{
str1[i] = str1[i] - 10 ;
str1[i-1] = str1[i-1] + 1 ;
}
}
if(str1[0] == '0')
{
str1 = str1.substr ( 1 , str1.size ()-1 ) ;
}
return str1 ;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: