From Test-Scratch-Wiki

Translate: - English - 中文 

本教程介绍如何检查给定的数字是否为整数。一个整数是一个数字,除以1时,没有余数。换句话说,整数不能是分数、带分数或无理数。

方法 1

如果数字是整数,则此布尔表达式将返回真:

<([向下取整 v](数)::operators) = (数)>

使用“向下取整”函数返回的最小整数等于该数字,表明这个数字是整数。“向上取整”、“四舍五入”函数也可以达到相同效果。

变量 [变量 v] 设为 (4.5)
如果 <([向下取整 v] (变量)) = (变量)> 那么 
  说出 [变量 是一个整数!]
否则
  说出 [变量 不是一个整数!!]
end

方法 2

下面这个脚本(积木堆) 如果变量 “n”是一个整数,角色将会说“N是一个整数!”。

变量 [检测变量 v] 设为 ([绝对值 v] \( (N) \))
重复 ([绝对值 v] \( (N) \)) 次 
  变量 [检测变量 v] 改变 (-1)
end
如果 <(检测变量) = [0]> 那么 
  说出 [N 是一个整数!]
end

此方法与方法1类似。它的原理是循环减N次整数1,看最后是值是否是整数0。但重复块不能重复负数次,因此我们应该添加绝对值块。 因为整数包括正整数、0、负整数,所以本例中加入取绝对值函数,否则负整数将无法检测。

方法 3

如果“n”是一个整数,那么这个布尔值将为真:

<((n) 除 (1) 的余数) = (0)>

“取余数”函数可以获取整除后的余数,如果n不是一个整数,那么它除以1后就会有一个小数的余数,类似“0.2478”这样的,如果是整数,除以1后,余数只能是0了。