アルゴリズムとプログラミング (全23問中9問目)
No.9
流れ図Xで示す処理では,変数 i の値が,1→3→7→13と変化し,流れ図Yで示す処理では,変数 i の値が,1→5→13→25と変化した。図中のa,bに入れる字句の適切な組合せはどれか。
出典:令和3年春期 問74
分類
テクノロジ系 » アルゴリズムとプログラミング » アルゴリズムとプログラミング
正解
エ
解説
まず流れ図Xを見てaに入る式を考えます。
"変換"というループ端に書いてある"k:1, 1, 3"は繰返し条件で、(注)に従うと変数名がk、kの初期値が1、増分が1、終値が3です。文章表現にすると「k=1からk=3まで1ずつ増やしながら繰り返す」という意味になります。
流れ図Xの処理の流れは次のとおりです。
次に流れ図Yを見てbに入る式(ループの繰返し条件)を考えます。
aには"i+2k"が入るので、流れ図Yの処理の流れは次のとおりです。
aには"i+2k"、bには"k:2, 2, 6"が入るので、適切な組合せは「エ」です。
"変換"というループ端に書いてある"k:1, 1, 3"は繰返し条件で、(注)に従うと変数名がk、kの初期値が1、増分が1、終値が3です。文章表現にすると「k=1からk=3まで1ずつ増やしながら繰り返す」という意味になります。
流れ図Xの処理の流れは次のとおりです。
・iに1を格納する
・i=1、k=1で、iにa=3 を格納する
・i=3、k=2で、iにa=7 を格納する
・i=7、k=3で、iにa=13 を格納する
aには"2i+k"と"i+2k"のどちらかが入りますが、最後のi=7、k=3とaの計算結果である13の関係に着目すると、"2i+k"では 2×7+3=17、"i+2k"では 7+2×3=13 ですから、"i+2k"が当てはまると判断できます。・i=1、k=1で、iにa=3 を格納する
・i=3、k=2で、iにa=7 を格納する
・i=7、k=3で、iにa=13 を格納する
次に流れ図Yを見てbに入る式(ループの繰返し条件)を考えます。
aには"i+2k"が入るので、流れ図Yの処理の流れは次のとおりです。
・iに1を格納する
・i=1、k=?で、iに 1+2k=5 を格納する
・i=5、k=?で、iに 5+2k=13 を格納する
・i=13、k=?で、iに 13+2k=25 を格納する
iを求める式から逆算すると、1回目のループのkは2、2回目は4、3回目は6であることがわかります。つまり、「k=2からk=6まで2ずつ増やしながら繰り返し」ています。よって、"k:2, 2, 6"の繰返し条件が当てはまります。・i=1、k=?で、iに 1+2k=5 を格納する
・i=5、k=?で、iに 5+2k=13 を格納する
・i=13、k=?で、iに 13+2k=25 を格納する
aには"i+2k"、bには"k:2, 2, 6"が入るので、適切な組合せは「エ」です。