C/C++ 超长正整数相加
admin
2023-02-14 20:20:02
0

本题整体思想不难,主要是想好用什么容器去存储计算值和计算结果值,这里用的是字符串,当然也可以用数组,题目链接:https://www.nowcoder.com/practice/5821836e0ec140c1aa29510fd05f45fc?tpId

以下为解答代码(具体细节看注释):

string AddLongInteger(string addend, string augend){
    int i = 0,n=addend.size()>augend.size()?n=addend.size():n=augend.size();  //n为较长计算值的长度,用来循环计算时使用
    string c;              //计算结果保存的值
    int  temp, tep = 0;         //进位值要记得初始化
    reverse(addend.begin(), addend.end());         //这里将两个加数都翻转过来计算,主要是为了写入结果的时候可以直接使用‘+=’
    reverse(augend.begin(), augend.end());         //当然也可以没有这一步,直接从后往前算
    for (; i < n; i++){
        int a = i0){    //若是最后一位计算有进位值,则直接填入结果
        c += tep+'0';
    }
    reverse(c.begin(), c.end());   //将计算结果反过来就是正确结果
    return c;
}

int main(){
    string a, b, c;
    while (cin >> a >> b){
        cout << AddLongInteger(a, b) << endl;
    }
    return 0;
}

相关内容

热门资讯

迭代领跑!黄河科技学院成功研发... 芳纶纸,常被称为杜邦纸,作为高端绝缘材料,从航空航天部件到高铁牵引变压器,大量高端电机的绝缘系统都依...
中方关于日本拥核问题的工作文件 一、近年来,日本在拥有核武器问题上消极言行不断,日方官员多次公然讨论修改“无核三原则”(即“不拥有、...
湖南一医院院长儿子被曝涉嫌“吃... 新华社长沙4月30日电(记者帅才)近日,湖南中医药大学第一附属医院院长朱某某的儿子朱某被曝涉嫌“吃空...
《求是》杂志发表习近平总书记重... 新华社北京4月30日电 5月1日出版的第9期《求是》杂志将发表中共中央总书记、国家主席、中...
2026豫剧文化艺术周 | 名... 您的浏览器不支持 video 标签。2026豫剧文化艺术周名家齐聚,唱响中原好戏连台,掌声不断不必远...
唐忠汉大师定制样板间于中原华曦... 五一假期首日,位于中原区二环主城区的中原华曦府项目,迎来了其备受关注的唐忠汉大师定制样板间的正式开放...
第二十届“”舞动中原”国标舞公... 由河南省舞蹈家协会专业指导,河南美丽中原文化体育有限公司主办的“舞动中原”国标舞公开赛展演,于202...
2026豫剧文化艺术周 | 大... 您的浏览器不支持 video 标签。大戏压轴,酣畅淋漓。台上演得酣畅,台下听得入迷。一颦一笑皆功夫,...
唐驳虎:马拉松跑进2小时,真正... 作者丨唐驳虎核心提要1. 2026年伦敦马拉松成为人类耐力史上的分水岭:肯尼亚选手萨维以1小时59分...