3

これを行うには100の方法があるに違いないことは知っていますが、3つの整数変数が互いに1点以内にあるかどうかを確認するための「最良/最も単純な」方法を誰かが推奨できますか.

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

各 var は互いに 1 ポイント以内にあるため、必要な式は TRUE を返す必要があります。

誰でもこれを行うための最良の機能/方法を提案できますか? 前もって感謝します

4

3 に答える 3

4

私はここでさらに1マイル行くと思った

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 に答える