問2.8 (制御構文)
解答
a = list(range(2,101)) # 2〜100までのリストを作成 ans = [] # 解答用リストを用意 for x in a: for i in range(1,x+1): if i == x: # 素数だった場合 ans.append(x) elif i == 1: # 1はスルーする continue elif x % i == 0: # 割り切れたら抜ける break print(ans)
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
もう少し簡単に書けそう。別解を見つけたら追記します。