二つの変数xとyに対して、次の手続を(1)から順に実行する。処理が終了したとき、xの値は幾らになるか。 [手続] (1) xに2を代入し、yに3を代入する。 (2) yの値から1を引いたものをyに代入する。 (3) xの値とyの値を加えたものをxに代入する。 (4) y≠1なら手続(2)に戻り、y=1なら処理を終了する。
イ. 5
手続き追跡:初期 x=2, y=3.(2)y=y−1=2, (3)x=x+y=2+2=4, (4)y≠1なので継続.(2)y=2−1=1, (3)x=4+1=5, (4)y=1で終了.最終x=5.「ループ条件と更新順序」を正確に追うのが正攻法.途中値を表で書きながら追うとミスを防げる.正解はイ.ループ追跡問題は1回ずつ状態変化を書き出すのが最も確実な解法.
ITパスポート 2010年 (平成22年 秋期) の過去問一覧へ戻る・問69