只用int实现四舍五入
i = 0sum = 0
while i <= 100000:
if i % 2 == 0:
sum = sum + i
i = i + 1
print("100000以内的所有偶数的和是",sum)
不是说加0.5吗 这里为啥是加1 不明白你在说什么。
什么加0.5 sunrise085 发表于 2020-9-5 23:09
不明白你在说什么。
什么加0.5
如果给 int() 函数传入一个浮点数参数,那么 int() 是简单暴力地将小数部分裁掉(比如 int(9.99) 的结果等于 9)……可是我们更习惯的是使用“四舍五入”的方式来取整。如果不借助其它函数,你能够单纯使用 int() 函数来实现吗4 Dgc~+
o@O<g )u2$4s5cp8rbPUC7]>}e_0I
答:只需要将 int() 函数的参数 +0.5 即可实现四舍五入。Y$@c}0K
wF~gP1Wo-3KG5&lEjZDdz*k^Rur7
解析:int() 函数固然没有那么“聪明”,但机器是死的,鱼油是活的!eGuql#{
:geo+!}As<d?~)vTHZfm'ryQ
四舍五入结果为 5,那么 int(5.4+0.5) 相当于 int(5.9) 结果为 5;
四舍五入结果为 6,那么 int(5.5+0.5) 相当于 int(6.0) 结果为 6。 能被2整除的数( i % 2 的余数为 0 )可不就是偶数吗?哪里还有0.5? 感觉你的标题和你的内容不相干啊,你这个代码是求一个范围内的偶数的和,与int四舍无入没有一点关系啊
如果你要实现让int四舍五入
例如:
a = 1.3
b = 1.6
int(a+0.5)
int(b +0.5)
这里其实利用了int特性将小数部分裁掉,来达到四舍五入
能除2没有余数的,这里要求必须是个整数,咋还有小数呢?
那你要这么算的话,负数也算里面得了。算小数的话,那就无穷无尽了。 看懵了,看混题了 不好意思0.0 确实不是一道 帅雷必成c王 发表于 2020-9-5 23:11
如果给 int() 函数传入一个浮点数参数,那么 int() 是简单暴力地将小数部分裁掉(比如 int(9.99) 的结果 ...
你这样的话还是舍掉小数点部分,并没有达到理想的四舍五入
比如你所说的
四舍五入结果为5,那么int(5.4+0.5),相当于int(5.9)结果为5,并没有达到四舍五入的效果 帅雷必成c王 发表于 2020-9-5 23:11
如果给 int() 函数传入一个浮点数参数,那么 int() 是简单暴力地将小数部分裁掉(比如 int(9.99) 的结果 ...
能不能实现随机输入一个浮点数实现四舍五入呢?
页:
[1]