利用int 四舍五入
while(1):temp = input("输入一个数字")
num = float(temp)
if(num >= 0):
if num - int(num) >= 0.5:
num = int(num) + 1
print(num)
else:
print(int(num))
else:
if(num - int(num) >= -0.5):
num = int(num) + 1
print(num)
else:
print(int(num))
思路:
1、正数,小数部分大于等于0.5 进1,否则就等于整数部分
2、负数,小数部分(注意,-1.5 的小数部分应是 -0.5)大于等于-0.5,进1,否则就等于整数部分。
其实一个简单的int(a+0.5)就能解决的问题,我为什么会写这么多代码,原因有2个:
1、小甲鱼给的这个答案很机智,我对自己没有想出来感觉愧疚,想证明自己也能用另外一个方式解出来(我自己想了想,这并不是另一种方式,只是代码形式不一样)
2、任何东西都需要积累,多写代码锻炼自己。代码实现应该也是,尝试多种思路,真正的使用时,可以综合考量各方面因素选择某一种。有些情况时没有绝对最优解的 不好意思,还是不对……我再想想{:10_266:} while(1):
temp = input("输入一个数字")
num = float(temp)
if num >= 0:
if num - int(num) >= 0.5:
print('小甲鱼的答案',end ='')
print(int(num + 0.5))
num = int(num) + 1
print('我的答案',end ='')
print(num)
else:
print('小甲鱼的答案',end ='')
print(int(num + 0.5))
print('我的答案',end ='')
print(int(num))
else:
if int(num) - num > 0.5:
print('小甲鱼的答案',end ='')
print(int(num + 0.5))
print('我的答案',end ='')
num = int(num) - 1
print(num)
else:
print('小甲鱼的答案',end ='')
print(int(num + 0.5))
print('我的答案',end ='')
print(int(num))
这样应该对了
页:
[1]