素数を判定する関数を作成する機会があったので晒してみます。
素数 - Wikipedia
def is_prime(x): if(x <= 1): return False for n in range(2, x-1): if x%n == 0: return False return True
- 1以下の数値が指定された場合には、強制的にFalse(素数ではない)を返しています
- 2からx-1まで除算実行し、一度でも割り切れれば(余り0)Falseを返します。
- 最後まで割り切れなければ、Trueを返します。
一応これで動いているようですが、もっとスマートなやり方はあるのでしょうか?