ベーシックコースの授業では主に作品制作に取り掛かっています。それ以外にもプログラミングスキルの向上を目的に問題も出しています。今回はその問題の一部をご紹介します。
今回の課題:「弾むボールのシミュレーション」
Scratchを使って落ちるボールの弾む様子をシミュレーションを作る課題です。
課題のポイント
- ボールの動きを考える
- ボールが弾むとボールの高さが変化すること
- 画面の端にボールが触れると止まること(又はボールが消えること)
以上三点を考慮してプログラムを構築する課題です。
問題の出し方は解き方のヒントを生徒たちに渡し、生徒各自でプログラムを構築して解答します。その為、自分で考えられる生徒は自分で考えながらプログラムを構築し、よく分からない生徒に対しては講師が一緒になって考えながら解答に導くようにしています。
このような出題のやり方をしている大きな理由は、完成形になるプログラムには特に決まった解法があるわけではないということが大きな理由です。もちろん、プログラミング言語の使用により決まった文法は存在するため、その文法に倣う必要はありますが、完成形となるプログラムには特定の形式はありません。それよりも課題となる結果から逆算して必要な要素を検証し、プログラムを組み立てる能力を身につけることの方が重要だと考えているため、このような出題のやり方を行なっております。
今回の課題を提出した生徒さんの作品のリンクになります。ご興味のある方はパソコン、タブレットPCからアクセスください。想定では、一つのボールが弾んで画面の端に着いたら止まる動きを想定していましたが、解答後の余った時間を使ってオリジナルの作品へとアレンジしてくれました。
こちらからアクセスしてください:https://scratch.mit.edu/projects/740046909/embed
授業では、このようにオリジナルの作品へと仕立て直すことも推奨しており、生徒たちは問題課題であっても思い思いの作品制作に取り組んでいます。