题解 | #取近似值#

取近似值

http://www.nowcoder.com/practice/3ab09737afb645cc82c35d56a5ce802a

python3
基础解法判断小数点后第一位是否大于等于5;
把字符按照小数点分割为整数和小数部分;判断小数部分第一个字符是否大于等于5;是的话输出整数部分+1 否则输出整数部分
#优化解法,把输入直接+0.5 按照int函数的默认规则,忽略小数部分。因此如果原本输入小数小于0.5,加0.5后还是小于1,int默认输出整数;
若原始输入小数大于等于0.5,加0.5后相当于整数进1,忽略小数部分。

num = '2.31'
num_list = num.split('.')
frac = num_list[-1]
if int(frac[0])>=5:
    print(int(num_list[0])+1)
else:
    print(int(num_list[0]))

########## 优化解法
print(int(float(input())+0.5))
全部评论

相关推荐

1 5 评论
分享
牛客网
牛客企业服务