鱼C论坛

 找回密码
 立即注册
查看: 7937|回复: 20

[已解决]有什么办法使得 int() 按照“四舍五入”的方式取整?

[复制链接]
发表于 2020-5-13 15:27:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?

int() 固然没那么“聪明”,但机器是死的,鱼油是活的!
5.4 “四舍五入”结果为:5,int(5.4+0.5) == 5
5.6 “四舍五入”结果为:6,int(5.6+0.5) == 6
大家看明白了吗?


请问这个怎么理解?
最佳答案
2020-5-13 16:00:03
本帖最后由 sunrise085 于 2020-5-13 16:02 编辑
qingsun 发表于 2020-5-13 15:52
实际上,int(5.6) != int(5.6+0.5)
那为什么int(5.6+0.5) == 6,就认为int(5.6) == 6呢?


谁说int(5.6) == 6呢?
这里是说使用int()对一个数num完成四舍五入,int(num+0.5)就是用int()对num进行四舍五入。
int(5.6+0.5) == 6,也没有认为int(5.6) == 6啊。只是说5.6四舍五入结果为6而已
用int()完成四舍五入,就像这样
def fun(num):
    return int(num+0.5)
这样调用这个函数的时候就是进行四舍五入啊
fun(5.6)结果就是6,fun(5.3)结果就是5
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-13 15:29:02 | 显示全部楼层

回帖奖励 +5 鱼币

大兄弟,这是小学数学啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:29:54 | 显示全部楼层

回帖奖励 +5 鱼币

太容易了,+0.5 以后  会准确的落在四舍五入的范畴内
自己心里加一下就ok

补充,自己可以测试一下   int 到底是如何取整的 ,应该是去尾法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:33:59 | 显示全部楼层

回帖奖励 +5 鱼币

领鱼币
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:35:00 | 显示全部楼层

回帖奖励 +5 鱼币

领鱼币x2
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:39:13 | 显示全部楼层

回帖奖励 +5 鱼币


领鱼币x3
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:41:37 | 显示全部楼层
因为int()转为整数是向下取整

单独5.8 向下取整 = 5
单独5.6 也是 = 5

你5.8+0.5=6.3 了   用int()取整  等于 6
同理  5.6+0.5=6.1   int()后  = 6
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:42:25 | 显示全部楼层
int()就是直接取整,把小数去掉。
若是 int(num+0.5),就可以直接让num若在四舍和五入的范畴之内,若num的小数部分小于0.5,那么再加0.5,也不会进位,使用int就把小数部分去掉了;若num小数部分不小于0.5,那么再加0.5就会进位,使用int的结果就相当于进位了。
很难理解么?不知道你是哪一点不理解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:42:39 From FishC Mobile | 显示全部楼层
2楼的大兄弟笑死我了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-13 15:51:45 | 显示全部楼层
sunrise085 发表于 2020-5-13 15:42
int()就是直接取整,把小数去掉。
若是 int(num+0.5),就可以直接让num若在四舍和五入的范畴之内,若num的 ...

实际上,int(5.6) != int(5.6+0.5)
那为什么int(5.6+0.5) == 6,就认为int(5.6) == 6呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-13 15:52:50 | 显示全部楼层
sunrise085 发表于 2020-5-13 15:42
int()就是直接取整,把小数去掉。
若是 int(num+0.5),就可以直接让num若在四舍和五入的范畴之内,若num的 ...

实际上,int(5.6) != int(5.6+0.5)
那为什么int(5.6+0.5) == 6,就认为int(5.6) == 6呢?

我是没明白这个逻辑。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 15:59:52 | 显示全部楼层
qingsun 发表于 2020-5-13 15:52
实际上,int(5.6) != int(5.6+0.5)
那为什么int(5.6+0.5) == 6,就认为int(5.6) == 6呢?

先去研究  int()这个函数是干啥的吧
int(5.0---5.9) 都是等于5 的   
而加0.5以后
5.5---6.4  再int()之后,就变成了5 5 5 5 5 6 6 6 6 6
这就变相的实现了四舍五入

评分

参与人数 1鱼币 +3 收起 理由
qingsun + 3 谢谢解答

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 16:00:03 | 显示全部楼层    本楼为最佳答案   
本帖最后由 sunrise085 于 2020-5-13 16:02 编辑
qingsun 发表于 2020-5-13 15:52
实际上,int(5.6) != int(5.6+0.5)
那为什么int(5.6+0.5) == 6,就认为int(5.6) == 6呢?


谁说int(5.6) == 6呢?
这里是说使用int()对一个数num完成四舍五入,int(num+0.5)就是用int()对num进行四舍五入。
int(5.6+0.5) == 6,也没有认为int(5.6) == 6啊。只是说5.6四舍五入结果为6而已
用int()完成四舍五入,就像这样
def fun(num):
    return int(num+0.5)
这样调用这个函数的时候就是进行四舍五入啊
fun(5.6)结果就是6,fun(5.3)结果就是5
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-5-13 16:00:53 | 显示全部楼层
本帖最后由 heidern0612 于 2020-5-13 16:02 编辑

四舍五入、四舍五入,意思不就是四(包含及以下)舍去,五(包含及以上)的话就进数的意思么?

以当前数+0.5位基准,不足后一个数,按本数算;超过后一个数,按后一个数算。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-13 16:39:56 From FishC Mobile | 显示全部楼层
qiuyouzhi 发表于 2020-5-13 15:29
大兄弟,这是小学数学啊

我们的题型是:
设 [x] 为不不超过 x 的最大整数
例如,[3.7] = 3, [-1.2] = -2
初中就上了一个档次,虽然还不算很难
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-12 18:14:22 | 显示全部楼层
哈哈哈,鱼币哦~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-2 21:51:48 | 显示全部楼层
好家伙,直接num+0.5,学到了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-3 17:27:51 | 显示全部楼层
我来贴贴
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-26 22:52:31 | 显示全部楼层
看见这么多混鱼币的,我也来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-5 14:13:50 | 显示全部楼层
回帖能加鱼币?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-25 03:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表