Codeup 墓地——3.5.问题 A: 又一版 A+B

题目描述

输入两个不超过整型定义的非负10进制整数A和B(<=2^31-1),输出A+B的m (1 < m <10)进制数。

输入

输入格式:测试输入包含若干测试用例。每个测试用例占一行,给出m和A,B的值。
当m为0时输入结束。

输出

输出格式:每个测试用例的输出占一行,输出A+B的m进制数。

样例输入

2 4 5
8 123 456
0

样例输出

1001
1103

提示

 

注意输入的两个数相加后的结果可能会超过int和long的范围。

 

#include 
#include 
#include 



int main(){
	int  m;
	long long a, b;
	while (scanf("%d", &m) != EOF){
		if (m == 0) break;
		scanf("%lld%lld", &a, &b);//注意longlong的输入符为%lld
		long long sum = a + b ;
		int ans[32], num = 0;
		do{
			ans[num++] = sum%m;
			sum /= m;
		} while (sum != 0);
		for (int i = num - 1; i >= 0; i--){
			printf("%d", ans[i]);
		}
		printf("\n");
	}
//	system("pause");
	return 0;
}

 

你可能感兴趣的:(codeup)