题目:进制转换类
题目描述
将M进制的数X转换为N进制的数输出。
输入
第一行,一个整数T,代表测试数据组数。
接着T行,输入32位二进制数
输出
输出X的N进制表示的数。
测试样例
输入
10 2
11
输出
1011
注意:注意输入时如有字母,则字母为大写,输出时如有字母,则字母为小写。
刚一看题,懵了,以前哪里听过三十六进制,吓坏我了,不过当你了解三十六进制就是所谓的 16进制后面用 G H I … Z 后,便豁然开朗了(ง •̀_•́)ง |
---|
思路:
1、先处理输入过程,赋值给相应的值
2、将M进制的X转换为10进制
3、将10进制数转换为N进制
4、输出处理
程序如下:
#include <iostream>
#include <stack>
#include <math.h>
using namespace std;
/**
* 一个十进制整数转换为N进制之间的任意进制数输出
* @param ary :要转换的进制
* @param num :要转换的数
*/
void Dec_To_All(int ary, long long int num) {
int temp = 0;
stack<char> number_stack;
if (ary <= 36 || ary > 1) {
//不满足条件则退出
if (ary > 1 && ary < 10) {
//2-9进制
while