演算法學習之路|D進位制的A+B

kissjz發表於2018-02-25

輸入兩個非負10進位制整數A和B(<=2^30-1),輸出A+B的D (1 < D <= 10)進位制數。

輸入格式

輸入在一行中依次給出3個整數A、B和D。

輸出格式

輸出A+B的D進位制數。

輸入樣例:
123 456 8
輸出樣例:
1103
我的思路

同二進位制一樣,只是把2變成了一個變數。

#include<iostream>
#include<stack>
using namespace std;
int main(){
    stack<int>v;
    int a,b,c,sum,tmp;
    cin>>a>>b>>c;
    sum=a+b;
    if(sum==0)
        cout<<"0";
    while(sum!=0){
        tmp=sum%c;
        sum/=c;
        v.push(tmp);
    }
    while(!v.empty()){
        cout<<v.top();
        v.pop();
    }
}


相關文章