第7回 大学入学共通テストの独自表記を分析IchigoJam BASICで表記する
東京都の小学校教諭、教育委員会指導主事、小学校校長などを歴任されてきた松田孝さん。学校現場をはなれた今も、自ら会社をつくり、自治体や民間企業と連携してプログラミング教育の普及に取り組まれています。
この連載では、これまでプログラミングの授業を実践してきた松田孝さんが見てきた「プログラミング教育によって変わる子どもたちの姿」や、元校長だから分かる「学校が抱える課題とその解決策」「大学入学共通テスト『情報Ⅰ』の最新情報」など、役立つ情報が満載!
今からプログラミングの授業をはじめたい先生方やプログラミング教育に関心がある保護者の方、必読です。
IchigoJam BASICとの比較で学ぶプログラムの仕組み
今回は、大学入試センターの独自表記で示された問2のプログラムとIchigoJam BASICでの表記を並列してみました。なおこのプログラムについては、PCN上田の斎藤四郎氏がブログにて解説を行ったものを援用させていただきました。(https://www.ichigojaman.jp/entry/2025test)


両者のプログラム構造の共通点
両者を比較すれば、ともに7行のプログラムであることが分かります。
IcgigoJam BASICの行番号は慣例で10,20,30〜となっており、それを踏襲表記が、大学入試センターの独自表記の(01)、(02)〜に対応します。
配列と変数名の対応関係
IchigoJam BASICでは、配列コマンドはLET表記で[1]は添字が1から始まることを示しています。したがって、LET[2]の要素は3、LET[3]の要素は4となっており、大学入試問題と同様の動きが再現されています。
また、行番号20、30のC、T、そして行番号40のBは変数を示しています。IchigoJam BASICでは変数名は大文字一文字で表記することになっていますので、これは入試問題文のbuinsu、tantou、buinと対応します。
繰り返し処理と条件分岐
行番号40はIchigoJam BASICの繰り返しのコマンドで、FOR 変数 TO 数 の形式で記述されます。つまり変数Bを変数Cまで1ずつ増やすというコマンドです。
行番号50は条件文です。[B]は添字変数Bの要素と対応し、その値と添字変数Tの要素を比較します。もしBの要素の値が小さければ、変数Tに変数Bの値を代入します。この代入は問題文では(06)行で行われるものと一致しています。IchigoJam BASICではFOR 変数 TO 数は、NEXTコマンドまで行われるので、行番号60にNEXTを記載しています。
結果の表示と確認
PRINTコマンドは、大学入試表記の「表示する」に対応し、求める「次の工芸品の担当部員の数字を表示」する役割を果たします。
IchigoJam WEB(https://ichigojam.github.io/web/)に、プログラムをそこに打ち込んでRUN実行すると、TANTOU=2 として正確に出力されるのです。

部員数が変わった場合の挙動確認
このプログラムの優れている点は、部員数が変更された場合にも正しく動作することです。たとえば、配列Akibiを [5,6,4,4,4] にし、buinsu=5 に変更した場合でも、「次の工芸品の担当は部員3」と正しく表示されます。

問題:代入は何回行われる?
問題は、部員数が五人に増え、それぞれの空き日が5日目、6日目、4日目、4日目、4日目であった時、(06)行目の代入が何(ク)回行われるのかという問いです。 代入の回数については、以下の表で確かめることができます。
代入回数の検証表

※行番号04~06の構造
04:外側の繰り返し処理(FOR文)
05:その中にある「もし◯◯なら(IF文)」の行なので「|」で1段階内側を意味する
06:そのIF文が「成立したときに行う処理」=代入となる
上記から代入の回数(ク)は、buin=3の時に AKIBI[buin] < Akibi[tantou] が成り立つ1回のみだと分かります。
次回の連載では、問3について独自表記をIchigoJam BASICに置き換えて、問題を分析していきます。
松田孝さん
合同会社MAZDA Incredible Lab CEO
小金井市立前原小学校・元校長
東京学芸大学教育学部卒業。上越教育大学大学院修士課程修了。東京都公立小学校教諭、指導主事、指導室長をはじめ、東京都の小学校校長を3校歴任。2019 年3月に辞職、4月に合同会社 MAZDA Incredible Lab を設立。総務省地域情報化アドバイザー、デジタル庁デジタル推進委員としてICTで教育に革命を起こすべく日々奔走。著書に『学校を変えた最強のプログラミング教育』『IchigoJamでできるプログラミングの授業』(くもん出版)がある。