1、实现四舍五入,禁止使用python内建函数。
func(soure_num, precise),source_num为需要处理的数据,precise为需要保留的位数,\
例如:a=45.3546,func(a, 1),返回结果为45.4,func(a, 2)返回结果为45.35
def new_round(number, precise=0):
digit = 10 ** precise
num2 = float(int(number * digit))
print(digit, num2)
# 找出四舍五入位的数字
find_index = str(number).find('.')
tag = str(number)[find_index + precise + 1]
# 此数与5判断
if number >= 0:
if int(tag) >= 5:
return (num2 + 1) / digit
else:
return num2 / digit
else:
if int(tag) >= 5:
return (num2 - 1) / digit
else:
return num2 / digit
a = 45.3546
b = 2
print('原数字为{},保留小数点后{}位,四舍五入的结果是{}'.format(a, b, new_round(a, b)))