Easier to read with cream paper, a tint, more contrast or larger text? Choose your colours and text, once, for every page.

プレビュー

順番に探す

これはレッスンの最初のページです。読んで、アクティビティを試してみましょう。続きは授業の全体にあります。

35分

出席番号を探す

出席簿から、「ゆうたさん」を探します。あなたなら、どうしますか。

多くの人は、上から順に、一人ずつ名前を見ていきます。見つかったら、そこで止めます。

この「順番に探す」手順は、プログラムでも、よく使われます。

今日のキーワード

ことばいみれい
探索たくさんのデータの中から、目的のものを探すことです。名簿から名前を探す
線形探索先頭から順に、一つずつ調べて探す方法です。1番目、2番目、3番目…
目的の値探している値のことです。この授業では、target と書きます。target = 20
見つからない最後まで見ても、目的の値がなかったことです。答えは -1
比べる回数探すまでに、要素を調べた回数です。手間の目安になります。3回

学生が入力するセルは、このプレビューでは空白です。

やってみよう: 順番に探す

コード: python
items = [30, 10, 20, 50]
target = 20
answer = -1

for i in range(len(items)):
    print(i, "番目を見ます:", items[i])
    if items[i] == target:
        answer = i
        break  # ここで、くり返しを終わらせます

print("見つかった番号:", answer)

# target を 99 に変えると、どうなりますか。

見つからなかったとき

最後まで見ても、目的の値がなければ、番号は答えられません。

そこで、「ない」を表す番号として、-1 を使うことが多いです。番号は 0 から始まるので、-1 は、本物の番号とまちがえません。

例: 探すのにかかる回数

リスト目的の値見る回数答え
[30, 10, 20, 50]3010番目
[30, 10, 20, 50]2032番目
[30, 10, 20, 50]5043番目
[30, 10, 20, 50]994見つからない(-1)

学生が入力するセルは、このプレビューでは空白です。

小さな確認: 順番に探す

やってみよう

小さな確認: 順番に探す

3問
挑戦してみましょう。回答はここで採点され、その後は保存されません。点数を残したい場合や、続きから再開したい場合はログインしてください。ログインして点数を保存

答えはここで採点され、保存されません。アカウントがあれば、結果が残ります。

Python の道具

Python には、探す道具もあります。target in items は、あるかないかを True か False で答えます。

items.index(target) は、番号を答えます。ただし、ないときは、エラーになります。

中では、先ほどと同じ「順番に探す」が動いています。

やってみよう: 道具を使う

コード: python
items = [30, 10, 20, 50]

print(20 in items)
print(99 in items)
print(items.index(20))

# 先に in で調べると、エラーを防げます。
if 99 in items:
    print(items.index(99))
else:
    print("ありません")

レッスンはまだ続きます

このレッスンの残り5つの部分は、練習問題や最後の確認とともに、授業の全体にあります。アカウントがあれば、すべて使えます。