プログラミングの基礎(擬似言語のトレース)
x を3倍することを繰り返す次のプログラムを実行した後の n の値はどれか。
整数型: x ← 1, n ← 0
while (x < 100)
x ← x × 3
n ← n + 1
endwhile
- A4
- B5
- C6
答えと解説を見る
正解:B. 5
x と n の値をトレース表に書き出すと、繰返しのたびに x は 3、9、27、81、243 と変わり、n は1ずつ増えます。x = 81 のときはまだ x < 100 が成り立つので、もう1回実行して x = 243、n = 5 になります。次の判定で x < 100 が偽になり、繰返しを抜けます。条件の判定は6回行われますが、中の処理が実行されるのは5回です。
- A. x が100を超えない最後の値81で止めた場合の回数です。81のときも条件は真なので、もう1回実行されます。
- B. 正しい。x が 3、9、27、81、243 になる5回です。
- C. 条件の判定の回数です。最後の判定(x = 243)では中の処理は実行されません。