処理を組み合わせて解こう
関数・リスト・繰返し・条件分岐を一つのアルゴリズムにまとめます。
必須
これまでの内容から、3問を復習しよう
前回までの問題からランダムに3問が表示されます。同じ復習用ファイルを書き換えながら進めます。
lesson15_review.pyレッスン番号と使う場面が分かる名前にして、あとで探しやすくします。
- VS Code上部の「ファイル」をクリック
- 「新しいテキスト ファイル」をクリック
- Ctrl+S(Macは⌘+S)を押す
lesson15_review.pyと入力して「保存」を押す
ここを確認:画面上のタブ、または左側のファイル一覧にlesson15_review.pyと表示されたら準備完了です。
表示
print(8 + 4)結果は?
変数
x=5
x=x*3
print(x)最後のxは?
条件分岐
n=7
if n>=5:
print("A")表示は?
実際に自分のパソコンで行ってから、チェックを入れてください。
長いコードを役割ごとの小さな部分に分けて読める。
- ✓入力・処理・出力を見分けられる
- ✓関数を使う理由を説明できる
- ✓途中の値を表にして追える
長いコードは分けて読もう
- 入力・処理・出力に分ける
- 判定する関数を読む
- リスト全体へ関数を使う
- 途中の値を表で追う
- 必須問題で組み合わせる
長いプログラムを一度に読む必要はありません。「データを用意する」「一つを判定する」「結果を数える」「表示する」の順に区切ると、短いコードの集まりとして読めます。
この講座では:長いコードを入力・処理・出力の3部分へ線で分けられれば十分です。共通テストでも、変数がどこで変わるかを区切って読みます。
合格者数を求めよう
lesson15_step02.pyレッスン番号と使う場面が分かる名前にして、あとで探しやすくします。
- VS Code上部の「ファイル」をクリック
- 「新しいテキスト ファイル」をクリック
- Ctrl+S(Macは⌘+S)を押す
lesson15_step02.pyと入力して「保存」を押す
ここを確認:画面上のタブ、または左側のファイル一覧にlesson15_step02.pyと表示されたら準備完了です。
lesson15_step02.pyへ、見本コードを一文字ずつ入力する- まだ実行せず、結果を予想する
- 保存して、VS Code右上の▶を押す
- 下のターミナルと教材の結果を比べる
def is_pass(score):
return score >= 60
scores = [55, 72, 61, 48, 90]
pass_count = 0
for score in scores:
if is_pass(score):
pass_count += 1
print(pass_count)pass_countはいくつ?
先に自分のパソコンで実行しましょう。画面に出た結果を見てから、下のボタンを押します。
途中の値を表で追おう
| score | 60以上? | pass_count |
|---|---|---|
| 55 | × | 0 |
| 72 | ○ | 1 |
| 61 | ○ | 2 |
| 48 | × | 2 |
| 90 | ○ | 3 |
48を調べた直後のpass_countは?
ここまで分かったか確認しよう
lesson15_step04.pyこの回の必須問題で使うファイルです。問題ごとに中身を書き換えます。
- VS Code上部の「ファイル」をクリック
- 「新しいテキスト ファイル」をクリック
- Ctrl+S(Macは⌘+S)を押す
lesson15_step04.pyと入力して「保存」を押す
ここを確認:画面上のタブ、または左側のファイル一覧にlesson15_step04.pyと表示されたら準備完了です。
lesson15_step04.pyを作る- 問題のコードを入力して保存・実行する
- 同じファイルを書き換えて次の問題へ進む
偶数を判定する関数
偶数ならTrueを返す関数を作ります。
条件に合う合計
リストから5以上の値だけを合計します。
平均以上の人数
平均を求め、その平均以上の値を数えます。
実際に自分のパソコンで行ってから、チェックを入れてください。
共通テスト型の問題を3問解こう
Pythonで動かした経験を思い出し、コードを上から読みます。まず自分で考え、困ったときだけボタンを開きましょう。
関数と繰返し
関数 hantei(x):
x>=5なら1、それ以外は0を返す
A=[3,8,5]
合計=各要素のhanteiの戻り値の和合計はいくつ?
更新される変数
total=0
A=[2,7,4]
各nについて n>3なら total=total+n最後のtotalは?
処理の役割
data=[...]
average=合計/個数
average以上の個数を数える
個数を表示『average以上の個数を数える』はどの役割?
できるだけ解いてみよう
全部終わらなくても大丈夫です。上から順番に挑戦しましょう。
- 1. 3以上を数える
- 2. 負の数だけ合計
- 3. 3倍する関数
- 4. 関数を全要素へ使う
- 5. 最大値の場所を探す
- 6. 入力・処理・出力を分ける
- 7. countが増える条件を読む
- 8. 途中表を作る列