スポンサーリンク

【プログラミング教育】定期テストで出題した結果2020年度版

Education

3学期にオリジナルのテキストを作成し、1年生の社会と情報の授業内でプログラミングを扱いました。
学期末というか、学年末ということで定期テストに出題をしました。
社会と情報では扱わなくてもよい内容ですが、「扱わなくても良い」というところですね。
学習指導要領というのは、あくまで必要最低限の内容が書かれています。
それをクリアしていれば、それを超えた内容を扱っても良いわけです。
情報Ⅰにはプログラミングの内容が必修となります。
現行の「情報と科学」では扱う内容となっていますので、構わず実施しました。

今回のテーマは条件分岐

授業の中で扱ってきた内容は、主に「条件分岐」です。
理由は、他の言語でも汎用性が高く、同時期に学習したExcelを利用した表計算の「関数」と通じる部分があるからです。
次期学習指導要領に繋がるように、新観点に当てはめて評価するならば、見たい力は「思考」「判断」「表現」の第2観点としました。
授業では、おみくじアプリの制作を実際にコーディングをしながら行いました。
出現確率を操作する方法についても触れています。

【JavaScript】おみくじアプリの教材
これまでの学習を教材化していきます①。今回は「条件分岐」です。

出題内容

    A君は日々の昼食を学校の食堂に頼っています。いつも悩んでしまうので、自動的にメニューを選んでくれるミニアプリを作成することにしました。選択肢は「カレー」「カツ丼」「ハンバーグ弁当」「パン」の4つとします。ただし、A君はカレーが好きなので、カレーの確率を40%とし、あとのメニューは20%ずつの確率で出現することにしました。
    ①アプリの設計にあたり、次のような流れ図を作成した。【1】〜【3】に入る数字を答えなさい。
    2020_3rdtest_chart
    ②実際にJavaScriptでコーディングを進めることにした。【4】〜【6】に最も適するコードを答えなさい。
    2020_3rdtest_code

回答傾向

もちろん今回のテストはプログラミングの範囲だけではないので、生徒によっては思いっきり捨てていた生徒もいたようです。
120名ほどいる生徒のうち、きちんと回答していたのは70%ほどでしょうか。

①の内容である出現確率の操作ですが、40%/20%/20%/20%で分けるのをそのまま「0.4」「0.2」「0.2」と書いている生徒が非常に多くいました。
これは出題文をそのまま書いただけであり、授業で説明してプリント教材にも書いてあるにも関わらず「理解」ができていないことになります。
プログラムを書く「表現」を問うているのに「理解」に戻ってしまう結果となってしまいました。
正答率は15%ほどでした。
こちらが今回のメインだっただけに、授業者としてはショックですし、授業方法の改善が必要ということです。

②の内容は、完全に「知識」を問うています。
多かった回答は「if」の連発。
適切にifとelseを使い分けて「else if」の組み合わせを登場させてもらいたかったのですが・・・
コーディング知識というより考え方を問うたつもりですが、if/elseくらいも覚えてもらえずでした。
addEventListenertとかは覚えなくていいよー、と授業で話していたのですが、「覚えなくていい」=「勉強しなくて良い」という構図になっていたかもしれません。
テストのために勉強するわけでないのですが、なんとも寂しいです。

まとめ

実際にコーディングすると以下の記事のような形になります。

【JavaScript】ランチのメニュー決定アプリ
2020年度社会と情報の学年末テストに試験的にプログラミングの内容を出題しました。実際にコーディングした内容です。

実用性はともかく、授業で扱った「おみくじアプリ」を応用して出題しました。
結果としては、定期テストは知識問題という印象が拭い去れない状況があったように思います。
「知識・理解」の先に「思考・判断・表現」があり、それを通して「主体的に学習に取り組む態度」が見えてくると思います。
私自身の「理解」がまだ浅いのは言うまでもありませんが、定期テストでどこまで見えてくるものなのか。

コメント

タイトルとURLをコピーしました