我试图获取用户的输入并做出一个条件语句,如果用户输入的浮点数包含 0.1,0.2,0.3,0.4,则将其向上舍入,如果不包含,则将其向下舍入。我知道只需使用该round()函数即可解决此问题,但我想使用math.ceil()and math.floor()。到目前为止我只有这么多,我确信这是错误的。import mathwhile True: x = float(input('Type something: ')) if x in (0.1,0.2,0.3,0.4): math.floor(x) print(x) else: math.ceil(x) print(x)
2 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
你可以这样检查:
while True:
x = float(input('Type something: '))
if x - math.floor(x)<0.5:
x = math.floor(x)
print(x)
else:
x = math.ceil(x)
print(x)
繁星淼淼
TA贡献1775条经验 获得超11个赞
你必须重新定义x,x = math.ceil(x)
代码:
import math
while True:
x = float(input('Type something: '))
if x-int(x) < 0.5:
x = math.floor(x)
print(x)
else:
x = math.ceil(x)
print(x)
添加回答
举报
0/150
提交
取消