为了账号安全,请及时绑定邮箱和手机立即绑定

问一个二进制小数的题

问一个二进制小数的题

suxiao 2015-12-08 00:10:19
就是把十进制0.8化为二进制数我的方法就是0.8*2=1.6=0.6+1                     0.6*2=1.2=0.2+1                     0.2*2=0.4=0.4+0                     0.4*2=0.8=0.8+0             本来想这样小数部分一直乘以2,然后乘到最后没有小数部分,然后再从最开始求得的整数值往下排列,便可得到二进制数,但大家都看到上面的了,总是最后又回到0.8再循环,这该怎么办呀?
查看完整描述

2 回答

?
evilShit

TA贡献1条经验 获得超0个赞

如果出现小数部分永不为0即循环小数的情况,是因为存在转换误差。需要根据转换精度的要求来确定转换后的二进制小数的位数。例如 若要求转换精确到10^-k,假设转换 后的二进制小数的位数是m位,则可根据m>=3.32k方便的计算出转换后的二进制小数的位数。

查看完整回答
反对 回复 2015-12-08
  • 2 回答
  • 0 关注
  • 1616 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信