PAT乙级——1022 D进制的A+B

注意测试点4是考虑输入A和B为0的情况,这种情况要单独列出来考虑

常做水题心情好。。

1022 D进制的A+B (20 分)

输入两个非负 10 进制整数 A 和 B (≤2​30​​−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(){
	
	long long int a,b;
	cin>>a>>b;
	long long int d;
	cin>>d;
	int c = a+b;
	int bits[1000];
	int i=0;
	if(c==0){
		cout<<"0"<<endl;
	}else{
		while(c>0){
			bits[i]=c%d;
			c/=d;
			i++;
		}
		for(int j=i-1;j>=0;j--){
			cout<<bits[j];
		}
		cout<<endl;
	}
	
	return 0;
}
发布了228 篇原创文章 · 获赞 76 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_41895747/article/details/102970317
今日推荐