C++程序 八进制转十进制的转换
给定一个八进制的数字,我们需要编写一个程序将给定的八进制数转换成相应的十进制数。
示例:
输入: 67
输出: 55
输入: 512
输出: 330
输入: 123
输出: 83
其基本思路是先从右侧开始提取给定八进制数的各位数,并用一个变量dec_value存储。在提取八进制数的各位数时,乘以恰当的基数(8的幂),并将其加到变量dec_value中。最终,在变量dec_value中存储所需的十进制数。
例如,如果八进制数为67,则
下面的图解释了如何将八进制数(123)转换为等价的十进制值:
下面是实现上述思路的代码:
输出:
时间复杂度: O(logN),其中N为给定的数字。
辅助空间复杂度: O(1)
使用预定义函数
输出: