输入十进制整数N和待转换的进制x(2、8、16),分别代表十进制N转换成二进制、八进制和十六进制,输出对应的结果。十六进制中
A~F用大写字母表示。
输入格式:
输入两个整数N(十进制整数N)和x(x进制),中间用空格隔开。
输出格式:
输出对应的结果。
输入样例:
1 | 123 2 |
输出样例:
1 | 1111011 |
输入样例:
1 | 123 16 |
输出样例:
1 | 7B |
思路
我们知道10进制数转x进制数的方法是利用短除法,每次去除以x,得到一个个余数,最后按得到的顺序,倒着输出每个余数就完事了。显然正着得到,倒着输出正好符合栈的特性–后进先出,因此我们只需要把得到的余数push到栈里,最后一个个pop出栈输出即可。需要注意的是,输出的时候,16进制的10-15要替换成A-F。
代码
1 |
|