学習ガイド

共通テスト「情報Ⅰ」 プログラムを紙で追う練習

情報の用語は分かるのにプログラムを読むと途中で迷うときは、入力と変数の変化を紙に並べます。貸出記録を題材に、条件の境目での動きを試し、集計した値から何が言えるかを確かめましょう。

最終更新日:

空欄を考える前に入力と出力を決める

図書委員が「先週、最も多くの本が借りられた曜日を知りたい」と考えているとします。貸出記録には曜日と本の名前が並び、同じ人がまとめて借りた本も別々の行に記録されます。このとき数えるのは来室者ではなく貸し出された冊数です。何が並んでいて、最後に何を答えるのでしょうか。問題文の横に「貸出ごとの記録 → 曜日別の冊数 → 最多の曜日」と書けば、途中で読み方に迷ったときの手がかりになります。

大学入試センターの本試験問題には「情報Ⅰ」の問題が掲載されています。記号の意味やデータの並びは、手元で使ったことのある言語から推測せず、解いている問題の説明を読んでください。実際の問題を離れて次の自作例を使うときも、入力の順番と同数の扱いを決めてから始めましょう。

曜日ごとの合計を指で追う

月・火・月の順に貸出が記録されたとします。紙に月曜と火曜の枠を作り、空の枠から始めて、記録を読むたびに該当する曜日の枠に短い線を足します。最初は月の枠にだけ線が入り、火を読んだところで同数になります。最後の月を読み終えると、線が多いのは月の枠です。処理した行を裏紙で隠しながら進めると、同じ行を続けて読む間違いも防げます。

今度は記録の末尾に火を足します。月と火の線がまた同じ本数になりました。「最多の曜日をすべて挙げる」つもりなら、答えをどちらか片方に決める手順では情報が足りません。「同じ冊数なら先に調べた曜日を残す」という条件なら、先に月を調べた場合は月です。どの答えを返すかは仕様で決まります。比較に「大きい」と「以上」のどちらを使うかで迷ったら、同数のときに書き換えが起きるかを表で試しましょう。

繰り返しの外と内を見分ける

手元の集計表は正しいのに、読んでいるプログラムでは最後の曜日にしか冊数が残りません。どこを疑いますか。曜日別の冊数を最初の状態に戻す命令が、各行を読むたびに実行されていないかを見ます。紙の表でも、記録を読む前にまとめて初期化した場合と、読むたびに欄を消した場合とを比べてください。初めて食い違った行に戻れば、すべての処理を最初から読み直さずに済みます。

復習では「繰り返しが苦手」とだけ書かず、「前の行から残るはずの月の冊数が消えた」と記録します。模試の答案の見直し方も使って、読めなかった記号と、読めたのに追い損ねた値を分けましょう。次の問題では、必要な方だけを練習できます。

集計結果の説明を元の記録に戻す

貸出が多い曜日を「図書室に来た人が多い曜日」と説明してよいでしょうか。たくさん借りる人がいれば、訪れた人数が同じでも冊数は増えます。人数を知りたいなら来室者を数えるための記録が必要です。グラフを見たときは、縦軸が何を数えたか、集計前の表では何がひとまとまりだったかを確認しましょう。グラフの題名を自分で書き直すつもりで読むと、データだけでは言えないことが見えてきます。

共通テストの学習計画に情報の演習を入れるなら、正答の記号と一緒に、比較に使った入力も残してください。後日、順番を変えた場合や同じ曜日ばかりの場合を試し、前に選んだ処理で意図した答えが返るか調べます。初めて見る題材でも、入力を書いて確かめるところから取りかかれます。

ExamLumaでできること

ExamLumaで自分の学習プランをいつでもすっきり管理できます。 ↗

1日の学習目標を決めて、毎日の達成度をひと目で確認できます。 ↗

完了した学習セッションをかんたんに記録できます。 ↗

あなたのAI学習コーチ →

ExamLuma — 今日の目標, 模試の成績推移
アプリの画面

よくある質問

表にはすべての変数を書くのですか。

まず設問が尋ねる変数と、それを変える条件に絞ります。同じ値に見える理由が分からなくなったときだけ、関係する変数の欄を増やしましょう。

プログラムを実行できる環境がなくても練習できますか。

短い入力を自分で用意し、処理が進むたびに値を書き換えてみましょう。紙で先に予想しておくと、あとで実行できたときも結果の違いを探せます。

用語を覚え直す目安はありますか。

解説を読んでも処理の意味を言い直せないときです。たとえば「代入」なら、自分の表のどの値を何に書き換えたかに結びつけて確認します。

出典・参考資料

Google Play