188 Views
December 17, 21
スライド概要
トピックス:条件分岐,ステップ実行
コンピューターサイエンス
URL: https://www.kkaneko.jp/cc/cs/index.html
金子邦彦(かねこくにひこ) 福山大学・工学部・教授 ホームページ: https://www.kkaneko.jp/index.html 金子邦彦 YouTube チャンネル: https://youtube.com/user/kunihikokaneko
cs-12. 条件分岐,ステップ実行 (コンピューターサイエンス) URL: https://www.kkaneko.jp/cc/cs/index.html 金子邦彦 1
条件分岐,age <= 12 のときは 500, age > 12 のときは 1200 ステップ実行により,ジャンプの様子を観察 2
全体まとめ • 条件分岐では,変数や式の値によって結果が変わ るなどの判断を行う 条件式は「age <= 12」のようになる • プログラムは,通常は,上から順に1つずつ実行 される(逐次実行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる • ステップ実行により,変数等の変化,プログラム 実行の流れを観察できる 3
アウトライン 12-1 12-2 12-3 項目 復習 条件分岐 演習 条件分岐のステップ実行 4
メソッドアクセス,代入 Python プログラムの例 x = 100 a = x + 200 enermy1 = hero.findNearestEnemy() hero.attack(enemy1) • 代入:オブジェクト名 + 「=」 + 式または値またはメソッド呼び出し • メソッドアクセス:オブジェクト名 + 「.」 + メソッド名 +「()」 (引数を付けることも) Python プログラムでは,その他にも,属性アクセス,関数 呼び出し,制御,「*」, 「+」などの演算子,コマンド, 定義など 5
Python Tutor の起動 ① ウェブブラウザを起動する ② Python Tutor を使いたいので,次の URL を開く http://www.pythontutor.com/ ③ 「Python」をクリック ⇒ 編集画面が開く 6
Python Tutor でのプログラム実行手順 (1)「Visualize Execution」をク リックして実行画面に切り替える (2)「Last」をクリック. (4)「Edit this code」をク (3) 実行結果を確認する. 7 リックして編集画面に戻る
Python Tutor 使用上の注意点① • 実行画面で,次のような赤の表示が出ることがある → 無視してよい 過去の文法ミスに関する確認表示 邪魔なときは「Close」 8
Python Tutor 使用上の注意点② 「please wait ... executing」のとき,10秒ほど待つ. → 混雑しているときは, 「Server Busy・・・」 というメッセージが出ることがある. 混雑している.少し(数秒から数十秒)待つと自 動で表示が変わる(変わらない場合には,操作を もう一度行ってみる) 9
12-1. 条件分岐 10
条件分岐 条件分岐では,変数や式の値によって結果が 変わるなどの判断を行う age の値が 12以下 13以上 → 500 → 1800 条件式は「age <= 12」のようになる 11
条件分岐のプログラム例 age = 18 if age <= 12: print(500) else: print(1800) if (age <= 12)の直後に「:」 else の直後に「:」 (どちらも,コロン) 字下げも正確に! print の前に,「タブ (Tab)」を 1つだけ 12
12-2. 演習 13
演習 資料:17 ~ 20 【トピックス】 • 条件分岐 • if • else 14
① Python Tutor のエディタで次のプログ ラムを入れる if (age <= 12)の直後に「:」 else の直後に「:」 (どちらも,コロン) 字下げも正確に! print の前に,「タブ (Tab)」を 1つだけ 15
正しくない字下げ 正しい字下げ 「delキー」などを使い ながら編集 16
② 実行するために,「Visual Execution」をク リック.そして「Last」をクリック.結果を確認 結果の 「500」を確認 17
③ 10 を 30 に書き換えて,実行し,結果を確認 結果は 1800 である 結果の 「1200」を確認 「Visual Execution」をクリック.そして「Last」をクリック.結果を確認. 「Edit this code」をクリックすると,エディタの画面に戻る 18
12-3. 条件分岐のステップ実行 19
プログラム実行 • 命令(コマンド)は,順番に並んでいる • 通常は,上から順に1つずつ実行される(逐次実 行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる ※ プログラミング言語の種類によっては,順番に 並んでいないという場合もある: SQL, Scheme, Prolog など 20
ステップ実行 • ステップ実行により,プログラム実行の流れをビ ジュアルに観察 21
演習 資料:23 ~ 28 【トピックス】 • Python Tutor でのステップ実 行の操作 • 変数の値の変化 • 実行の流れの変化(ジャン プ) 22
① まずは,「Visualize Execution」をクリッ クして,実行開始 23
すでに,プログラムを実行中だったときは,「First」 をクリックして,最初の行に戻すことができる 24
②「Step 1 of 3」と表示されているので, 全部で,ステップ数は 3 あることが分かる (ステップ数と,プログラムの行数は違うもの) 25
③ ステップ実行したいので,「Next」をクリッ クしながら,矢印の動きを確認. ※「Next」ボタンを何度か押し,それ以上進めな くなったら終了 見どころ 2行目から 5行目へ ジャンプするところ 26
④ 最後の行まで達したら,「Edit this code」をク リックして,エディタの画面に戻る 27
⑤ 次のように「age = 10」と書き換えて,い ままでと同じことを行う 見どころ 3行目で実行が止まる 28
全体まとめ • 条件分岐では,変数や式の値によって結果が変わ るなどの判断を行う 条件式は「age <= 12」のようになる • プログラムは,通常は,上から順に1つずつ実行 される(逐次実行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる • ステップ実行により,変数等の変化,プログラム 実行の流れを観察できる 29
演習問題 30
条件分岐 • 次のプログラムを作成 ① weight と料金の関係は次の通り weight の値が 100以下 → 0 100より大きい → 1000 ② weight = 80 に設定してテスト実行 31
正解の例 32
全体まとめ • 条件分岐では,変数や式の値によって結果が変わ るなどの判断を行う 条件式は「age <= 12」のようになる • プログラムは,通常は,上から順に1つずつ実行 される(逐次実行) • 条件分岐や繰り返し(ループ)では,逐次実行と は違う実行の流れになる • ステップ実行により,変数等の変化,プログラム 実行の流れを観察できる 33