次の結果を得たい場合、コード【A】【B】に入る組み合わせとして適切なものはどれか。なお【A】は★aの行と、【B】は★bの行と同じ数の空白でインデントされている。 [ 実行結果 ] 2 is a prime number 3 is a prime number 4 equals 2 * 2 5 is a prime number 6 equals 2 * 3 7 is a prime number 8 equals 2 * 4 9 equals 3 * 3 [ コード ] for n in range(2, 10): for x in range(2 ,n):   …★b if n % x == 0: print(n, ‘equals’, x, ‘*’, n//x) …★a 【A】 【B】 print(n,’is a prime number’)

適切な組み合わせは次のようになります:

python
for n in range(2, 10): for x in range(2, n): # ★b if n % x == 0: print(n, 'equals', x, '*', n // x) # ★a break # コンポジット数の場合は素数ではないので、この時点でループを抜ける else: print(n, 'is a prime number') # ★b

ここで、else 文は for ループが正常に完了した場合に実行されます。つまり、内側の for ループが素数であることが確認された場合に else ブロックが実行されます。

未分類

Posted by ぼっち