在编写一个谓词来测试一个数字是否可以被某个范围内的所有整数整除时,我想知道是否可以通过“声明”符号来制定关于输入的规则?
代码:
(defun integer-divisiblep (n m i)
(declare (integer n m i))
(do ((x m (- x 1)))
((< x n) (return t))
(when (not (integerp (/ i x)))
(return nil))))
在这种情况下,我可能想指定输入值“n”必须小于“m”。反正有没有用内置函数来做到这一点?我似乎无法通过 Hyperspec 上的声明标识符找到我想要的东西。
另外,我正在使用 SBCL,如果这有影响的话。