Pythonで素数を判定する方法~サンプルコードも掲載~

今回はPythonで素数を判定する方法について学習しましょう。実際のサンプルコードもあわせて紹介します。

今回はPythonで素数を判定する方法についてお勉強しよう!

目次

Pythonで素数を判定する方法

まずは素数について確認しましょう。

素数とは

素数とは1と自分自身以外で割り切れない数

上記定義から2,3,5,7,・・・は素数で、1,4,6,8,9は素数ではありません。

Pythonで素数を判定するサンプルコード

Pythonで素数を判定するサンプルコードを確認してみましょう。

def is_prime(num):
    """与えられた数が素数かどうかを判定"""
    if num <= 1:
        return False
    elif num == 2:
        return True
    elif num % 2 == 0:
        return False
    else:
        for i in range(3, int(num**0.5)+1, 2):
            if num % i == 0:
                return False
        return True

この関数は与えられた数が素数であれば Ture を、素数でなければ False を返します。

まず、1以下の場合は素数ではないので、False を返します。
また、2の場合は素数なので、Ture を返します。
次に2ではない偶数の場合は素数ではないので、False を返します。
最後に、奇数の場合は、与えられた数の平方根までの奇数で割り切れるかどうかを調べ、割り切れる数があれば素数ではないため、False を返し、割り切れる数がなければ素数なので Ture を返します。

まとめると次のようになります。

    STEP
    与えられた数が1以下の場合

    素数ではないので、False を返す。

    STEP
    与えられた数が2の場合

    素数なので、Ture を返す。

    STEP
    与えられた数が2以外の偶数の場合

    素数ではないので、False を返す。

    STEP
    与えられた数が1以外の奇数の場合

    与えられた数の平方根までの奇数で割り切れるかどうかを調べる。
    ⇒割り切れる数があれば素数ではないため、False を返す。
    ⇒割り切れる数がなければ素数なので Ture を返す。

    上の関数を使用して1から100の数が素数のものを出力してみましょう。

    for num in range(1, 101):
        if is_prime(num):
            print(num, end=' ')

    結果は次のようになります。

    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 

    まとめ

    今回はPythonで素数を判定する方法について学習してみました。
    皆さんもやってみてください。

    今回はPythonで素数を判定する方法についてお勉強したよ!

    よかったらシェアしてね!
    • URLをコピーしました!
    • URLをコピーしました!
    目次