ITパスポート|アルゴリズムとプログラミング 問1
流れ図 X で示す処理では、変数 i の値が、1→3→7→13と変化し、流れ図 Y で示す処理では、変数 i の値が、1→5→13→25と変化した。図中の a、b に入れる字句の適切な組合せはどれか。
![流れ図 X:i に 1 を格納し、ループ“k:1、1、3”の中で、[a]を計算してその結果を i に格納する。流れ図 Y:i に 1 を格納し、ループ“[b]”の中で、[a]を計算してその結果を i に格納する。(注)ループ端の繰返し指定は、変数名:初期値、増分、終値を示す。](/assets/q/ip-r03-q74.png)
正解:エ
解説
まず流れ図 X で a を決め、その a を使って、流れ図 Y の b を決めます。ループの指定“k:1、1、3”は、k を 1 から 3 まで 1 ずつ増やす、という意味です。
- a が“2i + k”の場合
- k = 1 で 2 × 1 + 1 = 3、k = 2 で 2 × 3 + 2 = 8。7 にならないので誤りです。
- a が“i + 2k”の場合
- k = 1 で 1 + 2 = 3、k = 2 で 3 + 4 = 7、k = 3 で 7 + 6 = 13。一致します。
- b が“k:1,3,7”の場合
- k = 1 で 1 + 2 = 3 となり、5 にならないので誤りです。
- b が“k:2,2,6”の場合
- k = 2、4、6 で、1 + 4 = 5、5 + 8 = 13、13 + 12 = 25。一致します。
- エ 正解。a は i + 2k、b は k:2、2、6 です。
出典:令和3年度 ITパスポート試験 公開問題 問74(読点「,」を「、」に改変)