码农_迈热 2022-05-12 21:53 采纳率: 100%
浏览 32
已结题

这让我头大了呀 九九我 家人们

这里的x为什么就等于不了1呢? 代码执行到x=0.7之后就乱了

img

img

x= 0.5
while x != 1.0:
    print(x,end='')
    x += 0.1
  • 写回答

1条回答 默认 最新

  • 丨秋水丨 2022-05-12 22:03
    关注

    浮点数因为精度问题,一般不能直接判断相等,通常需要提供一个误差范围
    比如 abs(A-B) < 1e-7则认为A、B相等
    可以改成

    x= 0.5
    while x < 1.0:
        print(x, end='')
        x += 0.1
    
    
    本回答被专家选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 5月23日
  • 专家已采纳回答 5月15日
  • 创建了问题 5月12日