while の条件に数値を使う
次のコードを実行したときの出力として、正しいものを1つ選べ。
n = 3
while n:
print(n, end=" ")
n -= 1
- A
3 2 1 - B
3 2 1 0 - C
2 1 0 - D
無限に繰り返される。
正解と解説を見る
正解:A
while の条件は、0 や空のオブジェクトなら偽として扱われる。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `n = 3` | n = 3 |
| 2 | `while n:` | n = 3 |
| 3 | `print(n, end=" ")` | n = 3 |
| 4 | `n -= 1` | n = 2 |
| 5 | `while n:` | n = 2 |
| 6 | `print(n, end=" ")` | n = 2 |
| 7 | `n -= 1` | n = 1 |
| 8 | `while n:` | n = 1 |
| 9 | `print(n, end=" ")` | n = 1 |
| 10 | `n -= 1` | n = 0 |
| 11 | `while n:` | n = 0 |
| 結果 | 実際の出力 | 3 2 1 |
- A
正しい。
nが 0 になると偽になり、ループが終わる。 - B
誤り。
nが 0 のときは、ループの本体は実行されない。 - C
誤り。最初の出力は 3。
- D
誤り。
nが減って 0 になる。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。