1022 D进制的A+B

输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。

输入格式:

输入在一行中依次给出 3 个整数 A、B 和 D。

输出格式:

输出 A+B 的 D 进制数。

输入样例:

123 456 8

输出样例:

1103

鸣谢用户谢浩然补充数据!

方法一:(数组)
#include<iostream>
using namespace std;
int main(){
    int a,b,c;
    cin>>a>>b>>c;
    int sum=a+b;
    int m[100];
    int i=1;
    m[0]=sum%c;
    sum/=c;
    while(sum){
        m[i++]=sum%c;
        sum/=c;
    }
    for(int j=i-1;j>=0;j--){
        cout<<m[j];
    }
    return 0;
}


方法二:(栈)
#include<iostream>
#include<stack>
using namespace std;
int main()
{
    stack<int>ans;
    int a,b,d,sum;
    cin>>a>>b>>d;
    sum=a+b;
    if(sum>d)
    {
        while(sum)
        {
            ans.push(sum%d);
            sum/=d;
        }
    }
    else
    {
        ans.push(sum);
    }
    while(!ans.empty()){
        cout<<ans.top();
        ans.pop();
    }
    return 0;
}
​

​

​

​

上一篇:While循环语句


下一篇:运维调试记录:SSH无法连接到远端Ubuntu