在Lua Corona SDK中确定变量是否有小数点/是否为小数。

我正在创建一个数学应用程序,问题的答案存储在一个名为 answer 的变量中,我需要一种方法来检查答案中是否有小数点,所以例如,如果生成的问题是 4 除以 3,我想要能够检查答案中是否有小数点。谢谢。

点赞
用户90511
用户90511

查看 math 标准库。判断一个数字是否是整数的一种方法是使用 floor 函数:

x == math.floor(x)

当然,这假设 x 是一个数字而不是字符串。

2013-03-19 23:29:46
用户4508689
用户4508689

你可以使用取模运算符(modulus operator)

if x % 1 == 0 then
    -- x 没有小数点
else
    -- x 有小数点
end

另一个选项是modf

local integral, fractional = math.modf(x)
if fractional == 0 then
    -- x 没有小数点
else
    -- x 有小数点
end
2022-11-27 13:31:40
用户20621421
用户20621421

看起来你需要检查一个数是否可以被另一个数整除,那么就可以使用取模运算。(如果你不知道,取模是除法的余数)

if N % D == 0 then
    print("divisible")
else
    print("not")
end

(如果 N 是 D 的倍数,那么它将打印 "divisible")

2022-11-28 08:28:17