题解 | #取近似值#

取近似值

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

  1. 两种想法:
  2. 一种用判断【‘.’】小数点后一位是什么情况,大于等于5,就打印【切片的整数位+1】,小于就打印切片的整数位
  3. 一种更简洁,用【任意数 % 1】的办法,
  4.     原理是,【整数 整除 1 】会得这个整数整数  取余 1】会得到这个整数,不会有余下的数。
  5.     若【小数 整除 1】,会得到这个整数;【小数  取余 1】会得到这个小数的小数部分
自己做的一种
n = input()
n = list(n)
for i in range(len(n)):
    if n[i] == '.':
        n2 = n[:i]
        i = i + 1
        if int(n[i]) >= 5:
            print(int(''.join(n2))+1)
            break
        else:
            print(int(''.join(n2)))
            break
他人思路
a = float(input())
print(int(a) + 1 if a % 1 >= 0.5 else int(a))


全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务