• 大整数加法


    大整数加法

    求两个不超过 200200 位的非负整数的和。

    输入格式

    有两行,每行是一个不超过 200200 位的非负整数,可能有多余的前导 00。

    输出格式

    一行,即相加后的结果。结果里不能有多余的前导 00,即如果结果是 342342,那么就不能输出为 03420342。

    输出时每行末尾的多余空格,不影响答案正确性

    样例输入

    22222222222222222222
    33333333333333333333

    样例输出

    55555555555555555555

    代码:

    #include<iostream>
    #include<string.h>
    using namespace std;
    int main(){ 

    char a[203],b[203]; cin>>a>>b; //设置结果的最大位数 int lenmax; if(strlen(a)>strlen(b)){ lenmax = strlen(a)+2; }else { lenmax = strlen(b)+2; } char *c= new char[lenmax]; int i =strlen(a)-1; int j =strlen(b)-1; int k=0,up=0,x,y; while (i>=0||j>=0) { if (i<0) x = 0; else x = a[i]-'0'; if (j<0) y = 0; else y = b[j]-'0'; int z =x+y+up; if (z>9) { z= z%10; up=1; }else { up=0; } c[k++]=z+'0'; i--; j--; } k--; //加完之后发现还有进位 if (up>0) { c[++k]='1'; } //可能存在a 和 b 出现00011这种情况,故需要剃掉0开始的 for (i = k; i >=0; i--) { if(c[i]!='0'){ k=i; break; } } // 输出结果 for(int i=k;i>=0;i--){ cout<<c[i]; } cout<<endl; }

     

    
    

    因上求缘,果上努力~~~~ 作者:每天卷学习,转载请注明原文链接:https://www.cnblogs.com/BlairGrowing/p/12677950.html

  • 相关阅读:
    IOS-UI基础-图片浏览器
    IOS-UI基础-UIImageView帧动画
    IOS-UI-transform
    IOS-UI基础-按钮扩展
    IOS-UI基础-UIView和UIViewController
    IOS-UI基础-按钮
    OC-关于COPY关键字
    OC-NSNumber与NSValue
    OC-NSFileManager创建目录
    2019规划目标
  • 原文地址:https://www.cnblogs.com/BlairGrowing/p/12677950.html
Copyright © 2020-2023  润新知