逐次探索 (番兵)
明解C言語 入門編 > 6. 関数 >
逐次探索 (番兵)
PHP
<?php $NINSU = 5; $FAILED = -1; function search($ary, $key, $no) { global $FAILED; $ary[$no] = $key; $i = 0; while (1) { if ($ary[$i] == $key) break; $i++; } return ($i == $no ? $FAILED : $i + 1); } $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_050.php
18 は、見つかりませんでした。
499 は、4 番目にあります。