所要時間

2時間

難易度

★★

概要(機能・動作)

APS旅行先チャート(Python版)

Monaca Educationでプロジェクトを開くと、すぐにプログラムが動作します。

ブラウザの確認ウィンドウで、旅行先の希望を尋ねる質問が表示されます。示された選択肢の中から1つ番号を選んで、キーボードで入力し、OKすると、その選択に応じた応答が表示されます。続いて、1つ目の回答に基づいた2番目の質問が表示されます。2つ目の質問に回答すると、旅行先の提案が表示されます。

最後に、アプリケーションのメインの画面に、2つの質問とその答えが表示されます。

学習項目

  • 質問と回答の選択肢を管理することを通じて、変数の仕組みと用途を学ぶ
  • 1つ目の質問の回答内容に応じて、2つ目の質問を変える。条件分岐の入れ子構造でこれを実現する
  • 選択肢を追加することを通じて、条件分岐構造の理解を深める

身に付く力

  • 知識・技能
    • 条件分岐の中に条件分岐を入れた制御構造を理解する。
    • 変数を使って値を管理する。
  • 思考・判断・表現
    • プログラムの複雑な制御構造を、フローチャートなどを用いて整理して検討できる。
  • 態度
    • 条件分岐構造を用いたコンピュータとの間の対話的なやりとりが自然なものになるよう、使用者の視点で考える。

学習活動(カスタマイズ)の内容

  1. 質問や応答文を変更します。質問や応答の文章は変数に代入して管理しているので、変数を学ぶことができます。
  2. 条件分岐の条件式を変更します。if文の中の条件式を変えることを通じて、振る舞いが変わることを確認します。後のカスタマイズや、作品制作の際に条件式を書く練習になります。
  3. 選択肢を増やします。アプリケーションの最初の版では、3つまたは2つの選択肢しかありませんでした。このカスタマイズで、4つから選べるようにします。if-elif-els文についての理解を深めます。
  4. 選択肢を増やします。上の階層の条件分岐に選択肢を増やし、増やした選択肢の下の階層に条件分岐構造を追加します。if-elif-else文を新規に作成することで、条件分岐構造についての理解を深められるほか、質問・応答の変数を追加する必要もあり、やや難易度の高いカスタマイズになっています。

特徴

様々な場面で、Yes/Noチャート(※質問にYesかNoで答え、選択肢を選んでいくと、診断結果に辿り着く図)を、プログラムで実現するアプリケーションです。ただし、質問への回答はYes/Noの2択ではなく、複数からの選択にしています。

if-elif-else文による条件分岐構造の組み合わせ(入れ子構造)で実現しており、条件分岐をしっかり学習することができます。APS教材には該当部のフローチャートも記載しており、フローチャートによる条件分岐構造の表現を学ぶことができます。

質問文・応答文を変数で管理する方法は、画面に表示するメッセージが条件分岐の部分から離れるため、一見すると見通しにくいですが、質問文と応答文の対応を見ながら実装できる利点があります。

作品制作への応用

「旅行先チャート」の構造とテーマをそのままに、質問文と応答文を学校の所在地周辺の名所・旧跡に変えるだけでも、魅力的なアプリケーションになります。最後に具体的な旅行先をお勧めするメッセージを工夫すると、実行結果(※最後に画面に表示される)の見栄えが良くなります。

Yes/Noチャートというアイデアは、様々な場面・テーマで応用できます。例えば、「おすすめの勉強方法」、「おすすめの筋トレ法・健康法」などです。

APS資料のダウンロード:先生向けサポートページ

APSのプロジェクト以外の資料は、プランごとに用意されている先生向けサポートページからダウンロードできます(サポートページはパスワードで保護されています)。

プランの詳細や、各サポートページのパスワードについては、アシアルまでお問い合わせください。

ベーシックプラン

https://edu.monaca.io/basic

スタンダードプラン

https://edu.monaca.io/standard

APSプロジェクトのインポート

APSプロジェクトをMonaca Educationにインポートするには、下記のアプリプログラミングシートのサポートページにアクセスし、該当のAPSのインポートボタンをクリックします。

アプリプログラミングシートのサポートページ

https://edu.monaca.io/template/aps