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

この設問が問うていること
プログラミングにおけるループ処理と幾何学的な図形描画の概念について問う設問です。
総合解説
この問題は、ロボットに正六角形を描画させるプログラムの穴埋めを通して、プログラミングの基本的な「ループ処理(繰り返し処理)」と「図形描画の幾何学的な考え方」を理解しているかを問うものです。 1. カウンタの初期値 `a` について プログラムの(4)には「処理回数のカウンタが6未満の場合は、(3)に戻る」とあります。これは、カウンタの値が0, 1, 2, 3, 4, 5 のときにループ((3)の処理)が実行されることを意味します。つまり、合計6回ループが実行されます。正六角形は6つの辺を持つため、6回直進し、6回方向転換する必要があります。したがって、カウンタの初期値 `a` は `0` が適切です。もし `a=1` とすると、カウンタは1, 2, 3, 4, 5 の5回しかループが実行されず、正六角形を描画できません。 2. 方向転換の角度 `b` について ロボットが多角形を描く場合、各頂点で「外角」の分だけ方向転換します。正六角形は6つの辺を持つため、外角は 360度 ÷ 6辺 = 60度 となります。したがって、右回りに方向転換する角度 `b` は `60` 度が適切です。内角の120度で方向転換すると、ロボットは内側に向かって曲がりすぎてしまい、正六角形にはなりません。 これらの理由から、「a=0, b=60」の組み合わせである選択肢アが正解となります。他の選択肢は、カウンタの初期値または方向転換の角度、あるいはその両方が不適切であるため、正六角形を正しく描画できません。
こんな聞き方もできます(タップで質問)