我不确定我所追求的数学术语,但我正在寻找一种方法在PHP中将变量赋值给一个三的倍数的整数.倍数将从数字1,2和3开始.所有整数将属于三个变量$vara,$varB和$varC之一.我认为应该使用模数运算符,但我不确定如何.
$vara可以包括数字1,4,7,10,13,16,19等.
$varB可以包括数字2,5,8,11,14,17,20等.
$varC可包括数字3,6,9,12,15,18,21等.
我想从if语句中分配数字,例如:
if( $number == (test for $vara) ) {
$number = $vara
} else if( $number == (test for $varB) ) {
$number = $varB
} else {
$number = $varC
}
解决方法:
是的,您需要模数(非模数)运算符.这将剩余部分除以3 – 0,1或2.
第一个测试是:
if ($number % 3 == 1)
您可能希望仅评估一次并在switch语句中使用 – 正如下面的David其他评论,这稍微有效:
switch ($number % 3) {
case 1:
$number = $vara;
break;
case 2:
$number = $varB;
break;
case 0:
$number = $varC;
break;
}