po-4. 条件分岐,ステップ実行

252 Views

December 21, 21

スライド概要

トピックス:Python, プログラミング, Python Tutor, 条件分岐, if, else, ステップ実行

Python プログラミングの基本
https://www.kkaneko.jp/pro/po/index.html

金子邦彦研究室ホームページ
https://www.kkaneko.jp/index.html

profile-image

金子邦彦(かねこくにひこ) 福山大学・工学部・教授 ホームページ: https://www.kkaneko.jp/index.html 金子邦彦 YouTube チャンネル: https://youtube.com/user/kunihikokaneko

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

po-4. 条件分岐,ステッ プ実行 トピックス: 条件分岐,if,else,ステップ実行 (Python Tutor による演習) URL: https://www.kkaneko.jp/pro/po/index.html (Python プログラミングの基本) 金子邦彦 1

2.

条件分岐,age <= 12 のときは 500, age > 12 のときは 1200 ステップ実行により,ジャンプの様子を観察 2

3.

全体まとめ • 条件分岐では,変数や式の値によって結果が変わ るなどの判断を行う 条件式は「age <= 12」のようになる • プログラムは,通常は,上から順に1つずつ実行 される(逐次実行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる • ステップ実行により,変数等の変化,プログラム 実行の流れを観察できる 3

4.

アウトライン 4-1 4-2 4-3 項目 復習 条件分岐 演習 条件分岐のステップ実行 4

5.

メソッドアクセス,代入 Python プログラムの例 x = 100 a = x + 200 enermy1 = hero.findNearestEnemy() hero.attack(enemy1) • 代入:オブジェクト名 + 「=」 + 式または値またはメソッド呼び出し • メソッドアクセス:オブジェクト名 + 「.」 + メソッド名 +「()」 (引数を付けることも) Python プログラムでは,その他にも,属性アクセス,関数 呼び出し,制御,「*」, 「+」などの演算子,コマンド, 定義など 5

6.

Python Tutor の起動 ① ウェブブラウザを起動する ② Python Tutor を使いたいので,次の URL を開く http://www.pythontutor.com/ ③ 「Python」をクリック ⇒ 編集画面が開く 6

7.

Python Tutor でのプログラム実行手順 (1)「Visualize Execution」をク リックして実行画面に切り替える (2)「Last」をクリック. (4)「Edit this code」をク (3) 実行結果を確認する. 7 リックして編集画面に戻る

8.

Python Tutor 使用上の注意点① • 実行画面で,次のような赤の表示が出ることがある → 無視してよい 過去の文法ミスに関する確認表示 邪魔なときは「Close」 8

9.

Python Tutor 使用上の注意点② 「please wait ... executing」のとき,10秒ほど待つ. → 混雑しているときは, 「Server Busy・・・」 というメッセージが出ることがある. 混雑している.少し(数秒から数十秒)待つと自 動で表示が変わる(変わらない場合には,操作を もう一度行ってみる) 9

10.

4-1. 条件分岐 10

11.

条件分岐 条件分岐では,変数や式の値によって結果が 変わるなどの判断を行う age の値が 12以下 13以上 → 500 → 1800 条件式は「age <= 12」のようになる 11

12.

条件分岐のプログラム例 age = 18 if age <= 12: print(500) else: print(1800) if (age <= 12)の直後に「:」 else の直後に「:」 (どちらも,コロン) 字下げも正確に! print の前に,「タブ (Tab)」を 1つだけ 12

13.

4-2. 演習 13

14.

演習 資料:17 ~ 20 【トピックス】 • 条件分岐 • if • else 14

15.

① Python Tutor のエディタで次のプログ ラムを入れる if (age <= 12)の直後に「:」 else の直後に「:」 (どちらも,コロン) 字下げも正確に! print の前に,「タブ (Tab)」を 1つだけ 15

16.

正しくない字下げ 正しい字下げ 「delキー」などを使い ながら編集 16

17.

② 実行するために,「Visual Execution」をク リック.そして「Last」をクリック.結果を確認 結果の 「500」を確認 17

18.

③ 10 を 30 に書き換えて,実行し,結果を確認 結果は 1800 である 結果の 「1200」を確認 「Visual Execution」をクリック.そして「Last」をクリック.結果を確認. 「Edit this code」をクリックすると,エディタの画面に戻る 18

19.

4-3. 条件分岐のステップ実行 19

20.

プログラム実行 • 命令(コマンド)は,順番に並んでいる • 通常は,上から順に1つずつ実行される(逐次実 行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる ※ プログラミング言語の種類によっては,順番に 並んでいないという場合もある: SQL, Scheme, Prolog など 20

21.

ステップ実行 • ステップ実行により,プログラム実行の流れをビ ジュアルに観察 21

22.

演習 資料:23 ~ 28 【トピックス】 • Python Tutor でのステップ実 行の操作 • 変数の値の変化 • 実行の流れの変化(ジャン プ) 22

23.

① まずは,「Visualize Execution」をクリッ クして,実行開始 23

24.

すでに,プログラムを実行中だったときは,「First」 をクリックして,最初の行に戻すことができる 24

25.

②「Step 1 of 3」と表示されているので, 全部で,ステップ数は 3 あることが分かる (ステップ数と,プログラムの行数は違うもの) 25

26.

③ ステップ実行したいので,「Next」をクリッ クしながら,矢印の動きを確認. ※「Next」ボタンを何度か押し,それ以上進めな くなったら終了 見どころ 2行目から 5行目へ ジャンプするところ 26

27.

④ 最後の行まで達したら,「Edit this code」をク リックして,エディタの画面に戻る 27

28.

⑤ 次のように「age = 10」と書き換えて,い ままでと同じことを行う 見どころ 3行目で実行が止まる 28

29.

全体まとめ • 条件分岐では,変数や式の値によって結果が変わ るなどの判断を行う 条件式は「age <= 12」のようになる • プログラムは,通常は,上から順に1つずつ実行 される(逐次実行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる • ステップ実行により,変数等の変化,プログラム 実行の流れを観察できる 29

30.

演習問題 30

31.

条件分岐 • 次のプログラムを作成 ① weight と料金の関係は次の通り weight の値が 100以下 → 0 100より大きい → 1000 ② weight = 80 に設定してテスト実行 31

32.

正解の例 32

33.

全体まとめ • 条件分岐では,変数や式の値によって結果が変わ るなどの判断を行う 条件式は「age <= 12」のようになる • プログラムは,通常は,上から順に1つずつ実行 される(逐次実行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる • ステップ実行により,変数等の変化,プログラム 実行の流れを観察できる 33

34.

関連ページ • Python まとめページ https://www.kkaneko.jp/tools/man/python.html • Python プログラミングを学ぶ Python Tutor, VisuAlgo, Code Combat を使用 https://www.kkaneko.jp/cc/po/index.html • Python プログラム例 https://www.kkaneko.jp/pro/python/index.html • 人工知能の実行(Google Colaboratory を使用) https://www.kkaneko.jp/pro/ni/index.html • 人工知能の実行(Python を使用)(Windows 上) https://www.kkaneko.jp/pro/deepim/index.html 34