本文へスキップ

令和8年度 ITパスポート試験 問88

この問題の解説と、これまでの解答の記録です。

問88
頻出度★★☆

プログラミングすることによって,ペンの上げ下げ,直進及び右回りの方向転換が可能なロボットがある。このロボットに1辺が1mの正六角形を描画させるプログラムを作成した。次の正六角形描画プログラムの a,b に入れる字句の適切な組合せはどれか。 〔正六角形描画プログラム〕 (1) ペンを下ろす。 (2) 処理回数のカウンタに| a |を設定する。 (3) 次の処理を順に実行する。  ・1m 直進する。  ・右回りに| b |度方向転換する。  ・処理回数のカウンタに1を加える。 (4) 処理回数のカウンタが6未満の場合は,(3) に戻る。 (5) ペンを上げる。

出典 令和8年度 ITパスポート試験 問88
解説

問 88

  • ア

    正解 正解はア (a:0, b:60)。まず b について。正六角形を一筆で描くとき、各頂点で進行方向を回す角度は内角ではなく「外角」で、外角 = 360 ÷ 頂点数 = 360 ÷ 6 = 60度。よって b は 60 が正しい。次に a について。ループは「処理回数のカウンタが6未満なら (3) に戻る」継続条件で、辺をちょうど6本描く必要がある。a に 0 を設定すると、(3) の本体 (1m 直進 → 右に60度回転 → カウンタ +1) を実行するたびカウンタが 1,2,3,4,5,6 と増え、6 になった時点で初めて「6未満」が偽となりループを抜ける。つまり本体が「ちょうど6回」実行され、辺が6本描かれて正六角形が完成する。したがって a:0, b:60 のアが適切。

  • 不正解イ

    a:0 は正しいが b:120 が誤り。120度は正六角形の「内角」であって、進行方向を回す角度ではない。回す角度は外角の60度。120度ずつ回すと外角が大きすぎて六角形にならず、図形が早く閉じてしまう (正三角形になる) ため不適。

  • 不正解ウ

    b:60 は正しいが a:1 が誤り。カウンタを 1 から始めると、本体を実行するたび 2,3,4,5,6 と増え、5回実行した時点でカウンタが6になりループを抜ける。辺が5本しか描かれず正六角形にならない。初期値は0でなければならない。

  • 不正解エ

    a:1 と b:120 の両方が誤り。a:1 ではループが5回しか回らず辺が5本になり、b:120 は内角であって回す角度 (外角60度) ではない。二重に不適。

ここがポイント
  • 正多角形をロボット (タートルグラフィックス) で描くとき、各頂点で回す角度は「内角」ではなく「外角」で、外角 = 360度 ÷ 頂点数。正六角形なら 60度。
  • カウンタ制御の繰返しは、初期値と継続条件をトレースして実行回数を確かめる。初期値0・継続条件「6未満」なら本体はちょうど6回実行される。
用語

解答の記録