gpt4 book ai didi

algorithm - 在具有任意基数的数字系统之间转换

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:25:01 25 4
gpt4 key购买 nike

考虑需要以下功能的情况:

convert(val1, base1, base2)

它将一个数字 (val1) 从 base1 数字系统转换为 base2 数字系统。在此函数中,所有参数都是字符串,例如

convert("34", "012345", "01234567890ABCDEF") 

调用是为了转换 346 -> X16

当我开始考虑实现时,很明显,将基数较大的数字转换为较小的数字需要为基数较大的数字定义除法运算,例如1210 -> X2 = 12/2 | 6/2 | 3/2 | 1/2 | = 11002

下一步是进行两步转换 Xb1 -> X10 -> Xb2。这肯定更容易实现,但是伙计们,你们能否确认我之前的结论没有错,或者是否有一种清晰的方法来实现这样的 convert() 函数而无需中间 -十进制转换?

谢谢!

最佳答案

假设您正在计算机程序中寻找实用的解决方案,您不想转换为基数 10 作为中间值,而是转换为计算机的 native 表示形式,其基数是无关紧要的。编写两个单独的函数,一个将字符串解析为整数,另一个将整数转换为字符串。

关于algorithm - 在具有任意基数的数字系统之间转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11005016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com