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

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

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

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

2 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

先讲这两个

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-03-24
?
DIEA

TA贡献1820条经验 获得超2个赞

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



查看完整回答
反对 回复 2019-03-24
  • 2 回答
  • 0 关注
  • 1047 浏览

添加回答

举报

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