我知道必须有100种方法可以做到这一点,但有人能推荐"最好/最简单"的方法来检查三个整数变量是否在一个点内吗。
$a = 1; $b = 2; $c = 1;
由于每个变量彼此在1点以内,所需公式应返回TRUE;
有人能提出最好的功能/方法吗。提前感谢
我想在这里多走一步
function scope_check()
{
// usage: bool scope_check(mixed $range, mixed $val1 [, mixed $val2 [,mixed $...]])
$array=func_get_args();
if(sizeof($array)<=1) return false;
$range=array_shift($array);
$max=max($array);
$min=min($array);
if($max-$min<=$range) return true;
return false;
}
$valid=scope_check(1, -10, -11, -12, 4, 5 ,7);
if($valid) echo 'valid'; else echo 'not valid';
function scope_check()
{
$array=func_get_args();
$max=max($array);
$min=min($array);
if($max-$min<=1) return true;
return false;
}
$valid=scope_check($a, $b, $c);
您可以使用abs()
函数:
abs($a-$b) <= 1 && abs($a-$c) <= 1 && abs($b-$c) <= 1