将数字从 2 进制 (二进制) 转换为 6 进制2024年8月28日 | 阅读 7 分钟 本文讨论了将二进制数转换为六进制数的实际实现 问题 - 问题是将给定的二进制数转换为其等效的六进制数。例如 Input 1: N = 1101101 = 10910 Output = 301 (3016 = 3 x 62 + 0 x 61 + 1 x 60 = 3 x 36 + 1 = 109) Input 2: N = 1110111 = 11910 思路和方法获得所需结果的简单想法是首先将给定的二进制数转换为其等效的十进制数,然后将其转换为其等效的六进制数。 现在让我们了解解决问题所涉及的工作/函数
所需函数的伪代码如下 二进制转十进制 (Int n) // 其中 n 是二进制输入
所需函数的伪代码如下 十进制转六进制 (Int dec) // 其中 dec 是十进制输入 让我们举个例子进一步理解 设 n = 1101,当我们调用二进制转十进制函数时,它将首先创建一些变量并将它们初始化为某个值。 这里,dec = 0,pv = 1 被创建。 现在,检查 while 循环条件。 这里,n = 1101,大于零,所以,我们进入第一次迭代。 第一次迭代 第二次迭代 第三次迭代 第 4 次迭代 在这里,while 循环将终止,因为 n 现在等于零。 现在,它将调用 decimalToBase6(dec) 函数并将 dec = 13 传递给它。 当调用 decimaltToBase6 函数时,它创建了 pv = 1 和 output = 0。dec = 13 被传递给该函数,它大于零,因此满足 while 循环条件。 让我们逐个查看每个迭代 第一次迭代 第二次迭代 这里,dec 现在等于零。 所以,在下一次迭代中,while 循环的条件将失败,它将打印输出并退出程序。 上述问题的实际实现1. Java 实现示例输出 The Base6 equivalent of 1101101 = 301 The Base6 equivalent of 1110111 = 315 The Base6 equivalent of 1010111 = 223 The Base6 equivalent of 1101111 = 303 2. C++ 实现示例输出 The Base6 equivalent of 11011011 = 1003 The Base6 equivalent of 10110111 = 503 The Base6 equivalent of 10110111 = 503 The Base6 equivalent of 11011011 = 1003 3. C 语言实现示例输出 The Base6 equivalent of 101010 = 110 The Base6 equivalent of 111101 = 141 The Base6 equivalent of 101101 = 113 The Base6 equivalent of 111010 = 134 4. Python 实现示例输出 The base6 equivalent of 1010101 = 221 The base6 equivalent of 1111010 = 322 The base6 equivalent of 1011011 = 231 The base6 equivalent of 1110100 = 312 下一主题缓存一致性 |
我们请求您订阅我们的新闻通讯以获取最新更新。