分析:
取近似值的本质 就是保留整数且需要 四舍五入,即小数部分大于0.5 整数部分加1,小于0.5,就直接保留整数
思路:float转int,首先想到 int转换,但int转换是只保留整数部分;如果单独取出小数部分,大于0.5整数+1,小于0.5,整数部分不变,但是还要去判断下;不如直接+0.5然后取整,则有两种情况:
- 小数部分 大于0.5,则+0.5后整数 进1
- 小数部分小于0.5,在加0.5后 整数部分不变
这样再直接int 取整数就方便了
import sys # 输入的是字符串,需要转换为float类型 num = float(input()) # int 转换的作用是 直接省略小数部分 # 如果小数部分 大于0.5,则+0.5后整数 进1 # 如果小数部分小于0.5,在加0.5后 整数部分不变 res = int(num+0.5) print(res)