過去問解きまくり研究所 ホーム

アルゴリズムとプログラミング|令和8年度 ITパスポート試験 問88

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

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

```
(1) ペンを下ろす。
(2) 処理回数のカウンタに   a   を設定する。
(3) 次の処理を順に実行する。
・1m直進する。
・右回りに   b   度方向転換する。
・処理回数のカウンタに1を加える。
(4) 処理回数のカウンタが6未満の場合は,(3)に戻る。
(5) ペンを上げる。
```

ab
060
0120
160
1120

解説

向きを変える角度は60度なので、aは0、bは60です。

正六角形は、1辺を進むごとに同じ角度だけ向きを変えることを六回繰り返すと描けます。向きを変える角度は、一周ぶんの360度を六つに分けた60度です。よってbには60が入ります。繰返しの回数は、カウンタが6未満の間だけ戻るという書き方で決まっています。カウンタを0から始めると、一回進むごとに1ずつ増えて、六回目を終えたところで6になり、6未満ではなくなるので終わります。ちょうど六回になるので、aには0が入ります。向きを変える角度は、外側にできる角の大きさです。内側の角である120度と取り違えやすいところなので、一周が360度であることから割り出すと確かです。

ほかの選択肢はなぜ違うのか

この問題に関係する言葉

出典:令和8年度 ITパスポート試験 問88(改変:原典の図表をテキストに書き起こした)

この問題を演習で解く

同じ単元をまとめて解くならアルゴリズムとプログラミングへ。

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)