算法笔记---D进制的A+B

题目描述

输入两个非负十进制整数A和B (<=2^30 - 1)以及D(进制数),输出A+B的D(1<=D<=10)进制数

输入格式:

在一行中依次给出三个整数A、B和D(进制数)

输出格式:

A+B的D进制数

样例:

输入:123 456 8
输出:1103

解题思路:
先把A+B的十进制求得,进而转换为D进制,可以使用除基取余来实现求D进制

#include<iostream>
using namespace std;

int main() {

	int A, B, D;
	cin >> A >> B >> D;
	int sum = A + B;
	int result[31];
	int i = 0;//余数的下标
	while (sum != 0) {//使用除基取余来实现进制转换
		result[i++] = sum % D;
		sum /= D;
	}
	for (int j = i - 1; j >= 0; j--)
	{
		cout << result[j];
	}
	system("pause");
	return 0;
}
发布了131 篇原创文章 · 获赞 21 · 访问量 6万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览