3

我知道必须有 100 种方法可以做到这一点 - 但有人可以推荐“最佳/最简单”的方法来检查三个整数变量是否在一个点内。

$a = 1; $b = 2; $c = 1;

由于每个 var 彼此相差 1 点,因此所需的公式应返回 TRUE;

谁能建议最好的功能/方法来做到这一点。提前致谢

4

3 回答 3

4

以为我会在这里加倍努力

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';
于 2012-07-17T11:49:58.230 回答
1
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);
于 2012-07-17T11:38:36.643 回答
0

您可以使用以下abs()功能:

abs($a-$b) <= 1 && abs($a-$c) <= 1 && abs($b-$c) <= 1
于 2012-07-17T11:29:04.000 回答