3255:十进制到六进制
-
总时间限制:
- 1000ms 内存限制:
- 65536kB
-
描述
- 进制转换: 将十进制(不超过int类型表示的范围)的数转换为六进制的数. 输入
- 输入为第一行是组数n,后面n行是需要进制转换的十进制数. 输出
- 进制转换后的n行六进制数。 样例输入
-
3 13 46 265
样例输出
-
21 114 1121
【思路】使用简单的堆栈实现十进制到六进制的转换。
【代码】AC的C++代码如下:
#include <iostream>
#include <stack>
using namespace std;
void changeToSix(int num)
{
stack<int> s;
if (num == 0)
cout << 0;
while (num != 0)
{
s.push(num % 6);
num /= 6;
}
while (!s.empty())
{
cout << s.top();
s.pop();
}
cout << endl;
}
int main()
{
int n;
int num;
cin >> n;
while (n--)
{
cin >> num;
changeToSix(num);
}
return 0;
}