問88 正六角形を描く手順

ITパスポート 令和8年度 公開問題、全100問のうちの問88。

出典:令和8年度 ITパスポート試験 公開問題 問88(空欄を[ a ][ b ]の形で示し、選択肢の表を文に組み直した)

プログラミングすることによって,ペンの上げ下げ,直進及び右回りの方向転換が可能なロボットがある。このロボットに1辺が1 m の正六角形を描画させるプログラムを作成した。次の正六角形描画プログラムの a,b に入れる字句の適切な組合せはどれか。

〔正六角形描画プログラム〕

(1) ペンを下ろす。

(2) 処理回数のカウンタに[ a ]を設定する。

(3) 次の処理を順に実行する。

・1 m 直進する。

・右回りに[ b ]度方向転換する。

・処理回数のカウンタに1を加える。

(4) 処理回数のカウンタが6未満の場合は,(3) に戻る。

(5) ペンを上げる。

  1. アa 0,b 6⁠0
  2. イa 0,b 1⁠2⁠0
  3. ウa 1,b 6⁠0
  4. エa 1,b 1⁠2⁠0
答えと解説を開く

正解はアです。

正六角形は 6 本の辺があるので、(3) を 6 回行います。カウンタに 1 を足したあと「6 未満なら戻る」ので、0 から始めると 1、2、3、4、5、6 と進み、ちょうど 6 回で止まります。1 から始めると 5 回で止まってしまいます。a は 0 です。次に曲がる角度です。正六角形の内側の角は 1⁠2⁠0 度ですが、ロボットが進む向きを変える角度は、まっすぐ進む向きからのずれなので、1⁠8⁠0 度から 1⁠2⁠0 度を引いた 6⁠0 度です。6 回曲がって 6⁠0 × 6 = 3⁠6⁠0 度、ちょうど 1 周して元の向きに戻ります。b は 6⁠0 です。だから正解はアです。

ほかの選択肢が違う理由

  • イ1⁠2⁠0 度は正六角形の内側の角です。進む向きを 1⁠2⁠0 度ずつ変えると、3 回で 1 周して正三角形になります。
  • ウカウンタを 1 から始めると、2、3、4、5、6 と 5 回で止まり、辺が 5 本しか描けません。
  • エカウンタが 1 からだと 5 回しか回らず、1⁠2⁠0 度ずつ曲がると正六角形にもなりません。

仕組み

正多角形を描くとき、曲がる角度は 3⁠6⁠0 度を辺の数で割った値です。正方形なら 9⁠0 度、正三角形なら 1⁠2⁠0 度です。

繰返しの回数は、カウンタの始めの値と、止める条件の「未満」か「以下」かで決まります。1 回ずつ数えて確かめると、1 回ずれる誤りを防げます。

この問に出る言葉