下午好,
如何将字符数多于语言最大整数类型中位数的二进制字符串转换为十进制字符串?换句话说,假设你有字符串
111001101001110100100(...)1001001111011100100
并且您不能先将其转换为整数,那么您将如何以 10 为基数编写它?
非常感谢。
您可以使用如下算法:
// X is the input
while ( X != "0" )
compute X' and R such that X = 10 * X' + R (Euclidean division, see below)
output R // least significant decimal digit first
X = X'
X 除以 10 的欧几里得除法计算如下:
R = 0 // remainder in 0..9
X' = ""
for (b in bits of X) // msb to lsb
R = 2*R + b
if R >= 10
X' += "1"
R -= 10
else
X' += "0"
Remove leading "0" from X'
The remainder is R in 0..9
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)