问题标题: 酷町堂:二进制转十进制

0
0
已解决
阚轻眉
阚轻眉
新手守护
新手守护

输入一个二进制数,将其转换为对应的十进制数(二进制不大于32位)

求思路,核心,伪代码


0
已采纳
沙宸安
沙宸安
高级启示者
高级启示者

算法:

个位*1+十位*2+百位*4+千位*8+...

以此类推

可以用循环求解

0
汪恺恒
汪恺恒
中级启示者
中级启示者

仔细看题,有提示

将这个数的个位乘2的0次幂,十位乘2的1次幂……

可以用循环取位数+pow函数

0
张帆
张帆
中级天翼
中级天翼
方法:bai要从右到左用二进du制的每个数去乘以zhi2的相应次方,小dao数点后则是从左往右。

例如:二进制数zhuan1101.01转化成十进制

1101.01(二进制)=1*2^0+0*2^1+1*2^2+1*2^3 +0*2^-1+1*2^-2=1+0+4+8+0+0.25=13.25(十进制)
所以总结起来通用公式为:

abcd.efg(二进制)=d*2^0+c*2^1+b*2^2+a*2^3+e*2^-1+f*2^-2+g*2^-3(十进制)



 

我要回答