为了账号安全,请及时绑定邮箱和手机立即绑定

关于lua语言中math.floor函数的问题

关于lua语言中math.floor函数的问题

元芳怎么了 2019-05-14 09:08:54
各位大大,请帮帮我对math.floor(X)的解释是:函数返回不大于参数X的最大整数。我觉得能理解这句话的意思……但是看到举例:print(math.floor(-3.-5)) -》-8print(math.floor(-9.2)) -》-10print(math.floor(9.2)) -》9我凌乱了,我表示我完全不理解之前那句话的意思啊啊……我是初学者中的初学者,希望各位高手能用比较基础的语言解释一下……或者直接告诉我为什么这三个例子里输出是这样的结果谢谢各位了~~~
查看完整描述

2 回答

?
慕少森

TA贡献2019条经验 获得超9个赞


先讲这两个

print(math.floor(-9.2))   -》-10

print(math.floor(9.2))   -》9


-10<-9.2<-9

   9< 9.2<10

函数返回不大于参数X的最大整数:意思就是向下取整

显然-10,9便是小于参数的最大整数

----------------------------------------------------------------

print(math.floor(-3.-5))   -》-8

这个啊 我也不知道,但是

print(-3.-5) ---> 8

然后我就发现这个等价于print(-3-5)

接着我试了一系列 发现就是

print(-n.-m) <--> print(-n-m)    (n,m<=0)


所以 -3.-5本身就是-8啊

对-8向下取整就是-8了


*math.ceil   向上取整   





查看完整回答
反对 回复 2019-05-15
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

“不大于X的最大整数”
这是代数语言,不好理解
换成几何语言,就很直观好理解了——
先在数轴上找到X
“不大于X”就是“不要X的右边,但保留X”
“的最大整数”就是“在剩下的左半数轴找出最右边的整数”
合起来说就是:“从X向左(包括X)的第一个整数”
9.2向左的第一个整数是不是9?
-9.2向左的第一个整数是不是-10?
明白了没有





查看完整回答
反对 回复 2019-05-15
  • 2 回答
  • 0 关注
  • 606 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信