逐次探索

明解C言語 入門編 > 6. 関数 >

逐次探索

PHP
<?php
$NINSU  =  5;
$FAILED = -1;

function search($ary, $key, $no)
{
    global $FAILED;

    $i = 0;
    while (1)
    {
        if ($i       == $no)  return $FAILED;
        if ($ary[$i] == $key) return $i + 1;
        $i++;
    }
}

$ary = array(83, 55, 777, 499, 20);
$key = 18;
$idx = search($ary, $key, $NINSU);
if ($idx == $FAILED)
    print "$key は、見つかりませんでした。\n";
else
    print "$key は、$idx 番目にあります。\n";

$key = 499;
$idx = search($ary, $key, $NINSU);
if ($idx == $FAILED)
    print "$key は、見つかりませんでした。\n";
else
    print "$key は、$idx 番目にあります。\n";
?>

実行結果

L:\>php lesson_06_049.php
18 は、見つかりませんでした。
499 は、4 番目にあります。