逐次探索 (番兵)
明解C言語 入門編 > 6. 関数 >
逐次探索 (番兵)
Python
# coding: Shift_JIS NINSU = 5 FAILED = -1 def search(ary, key, no): global FAILED ary.append(key) i = 0; while (True): if (ary[i] == key): break i += 1 if i == no: return FAILED return i + 1 ary = [83, 55, 777, 499, 20] key = 18; idx = search(ary, key, NINSU) if (idx == FAILED): print "%dは、見つかりませんでした。" % key else: print "%dは、%d番目にあります。" % (key, idx) key = 499 idx = search(ary, key, NINSU) if (idx == FAILED): print "%dは、見つかりませんでした。" % key else: print "%dは、%d番目にあります。" % (key, idx)
実行結果
N:\>python lesson_06_050.py
18は、見つかりませんでした。
499は、4番目にあります。