一筋縄ではいかない、洛北・西京附中対策。過去問を解くのに一苦労。その解説を理解するのにも一苦労。。。
そんな受検生を応援すべく、まなべーとでは、通年企画として【今週の一問】を掲載します。
洛北・西京附中受検に向けて勉強を進めていく中で、重要な問題をセレクトしてお送りしますので、是非ご一読ください!!
今週は、西京附中の出題を代表する分野「プログラミング問題」です。初めて見るタイプの問題だと思いますが、根気強く頑張ってみて下さい。
〈問題〉
5⃣京太さんは夏休みに「線にそって進むロボット」を作りました。ロボットは以下のルールに従って動きます。
・ロボットは紙の上に書いた線(「マップ」と呼ぶ)にそって進む。
・先に「手順」を決めておき、分かれ道にさしかかった場合は、その手順に従って進む。
(例:「手順」を『右-右-左』と決めたとき、ロボットは最初の分かれ道では右に、2つ目でも右に、3つ目では左に進む。)
・道が3本以上に分かれている場合、ロボットはその分かれ道で止まる。
・線が途切れていると、ロボットはそこで止まる。
・分かれ道にさしかかった際に、「手順」が決められていなかった場合、ロボットはそこで止まる。
(例:「手順」を『右-右-左』と決めてロボットを進めたとき、4つ目の分かれ道でロボットは止まる)
このとき、以下の問題に答えなさい。
(1)京太さんが作ったロボットについて、次の①~⑤から、正しい文を全て選び、記号で答えなさい。
①道が2本に分かれている道では、必ず右または左に進む。
②手順『右-左』のときは、1つ目の分かれ道が2本に分かれている場合、ロボットは右の道を進む。
③手順『右-左』のときは、1つ目の分かれ道が3本に分かれている場合、ロボットは右の道を進む。
④手順『右-左』のときは、ロボットは3つ目の分かれ道まで進むことはない。
⑤ロボットが進んでいる線が途切れた場合、ロボットはその途切れた場所で止まる。
(2)手順『左-右-左-右』で、ロボットをSから進めたとき、Gで止まらないマップを次の(ア)~(エ)から選び、記号で答えなさい。ここでマップ上の分かれ道は「●」で、途切れている場所は「◌」表しています。
次の図のようなマップで、ロボットを進めるとき、(3)~(5)に答えなさい。ここで、マップ上の分かれ道は「●」で、途切れている場所は「◌」表しています。
(3)手順『右-左-左-左』で、ロボットをaから進めたとき、このロボットが止まる場所を、マップ上の①~⑩またはa~gから選び、数字または記号で答えなさい。
(4)gから進めて、fで止まる手順として正しいものを、次の①~⑥から全て選び、記号で答えなさい。
①右-右-右-右 ②左-左-左-右 ③右-左-左-右-右
④左-左-右-右-左 ⑤左-左-左-右-左 ⑥左-右-右-左-右-右
(5)aから進めてgで止まる手順は、作ることができません。その理由を答えなさい。
〈解答・解説〉
(1)②・⑤ ランクA
(ア)×:「『左−右−左』を決めてロボットを進め」ると、4つ目の分かれ道では止まるため、分かれ道ではいつも右か左に進むとは言えません。
(イ)○:「手順は」分かれ道にさしかかった時の道の選び方を指定するものなのでこの文章は正しいです。
(ウ)×:(ア)と同様に、「手順」を2つまでしか決めておかないときには、3つ目の分かれ道では止まります。
(エ)×:「手順」を2つ目で決めておいた時、ロボットは3つ目の分かれ道までは進み、その後3つ目の分かれ道で止まります。したがって文章は誤りです。
(オ)○:「紙が途切れている場所に来ると、そこで止まる」とあるので、この文章は正しいです。
したがって正しい文章はイ,オになります。
(2)③ ランクB
手順「左−右−左−右」のもとで、
というようにロボットは動くため、Gで止まらないマップはウになります。
(3)⑤ ランクB
早い順「右−左−左−左」のもとで、ロボットをaから進めると、
というように動くので、ロボットは⑤に止まります。
(4)①、④、⑥ ランクC
一つずつ手順を試していきましょう。
(ア)5つ目の分かれ道にたどり着く前に、fで道が途切れているので、そこで止まります。
(イ)⑤は3本以上に道が分かれているので、そこでロボットは止まります。
(ウ)「手順」が5つまでしかないため、6つ目の分かれ道である⑦で止まります。
(エ)5つ目の分かれ道にたどり着く前に、fで道が途切れているので、そこで止まります。
(オ)⑥は3本以上に道が分かれているので、そこでロボットは止まります。
(カ)7つ目の分かれ道にたどり着く前に、fで道が途切れているので、そこで止まります。
したがって正しいものは①,④,⑥になります。
(5)(例)ロボットをaから進めてgに向かうと、3本の分かれ道をもつ⑥を必ず通るが、ロボットはこの分かれ道で止まってしまうから。ランクC
ロボットにどんな手順を与えても止まってしまうのは
1⃣線が途切れている場所
2⃣3本以上に道が分かれている分かれ道
です。のどちらかのパターンです。
このうち、aから進めてgにたどり着くまでの道で線が途切れているところは、うまく「手順」を決めると避けることができます。よって1⃣によってロボットは止まりません。
一方で、2⃣に関して考えるとaからgの間で必ず通らなければいけない⑥は3本以上の分かれ道になっています。よって、どのような手順でもロボットは⑥で止まってしまうことがわかります。
いかがでしたか。おそらく小学校の算数の授業ではあまり出会ったことのないタイプの問題だったと思います。しかし、問題文を読んで、指示通りしっかり操作を重ねていけば、特別な計算・思考をしなくても正解まで辿り着ける問題でした。
ぜひ、全問正解できるまで、何度も解き直してみて下さい!!