-2

如何检查一个值是 6 还是 7 的倍数。

例子

....
var
numbers
being
 if (numbers is a multiple of 6 or 7) then begin
    memo1.lines.add(inttostr(numbers));
    numbers := numbers+1;
 end;
4

2 回答 2

2

使用模数确定除以数字后是否有余数

(number mod 6 = 0) // if expression is true then it is a multiple

因此,例如在上面的示例中,如果数字为 7,它将返回 1

于 2013-09-11T09:32:23.617 回答
2

要检查一个数是否能被另一个数整除,请使用余数运算符, mod

mod运算符返回通过将其操作数相除而获得的余数。

您需要测试的条件是除数除以后的余数为 0。

举个具体的例子,12 能被 6 整除,因为除法后的余数是 0。但是 13 不能被 6 整除,13 除以 6 后的余数是 1。

所以,你可以使用这样的函数:

function IsExactlyDivisibleBy(Number: Integer; Divisor: Integer): Boolean;
begin
  Assert(Divisor>0);
  Result := Number mod Divisor = 0;
end;
于 2013-09-11T09:42:17.710 回答