华为机试HJ7取近似值
题目:
将给定的数值小数点后的数值进行四舍五入
想法一:
遍历输入的每个字符,将小数点之前的字符拼接,小数点后一位的数值进行四舍五入的判断,并将四舍五入后的数值与小数点位之前的数值相加获得最终的结果
input_number = input()result = ""
i = 0
while input_number[i] != ".":result += input_number[i]i += 1
if int(input_number[i+1]) >= 5:result = int(result) + 1print(result)
想法二:
输入数字与1取余的结果四舍五入后与该数值的小数点前的数值相加
input_number = float(input())
print(int(input_number) + 1 if input_number % 1 >= 0.5 else int(input_number))