Pythonで素数をチェック | プログラミング学習 初心者向け入門ガイド

ホーム › >>

Pythonで素数をチェック

記事掲載:https://laptrinhcanban.com/ja

Pythonで素数を調べる方法のチュートリアル。このレッスンの後、python で素数をチェックする関数を作成する方法と、 pythonで n 未満のすべての素数を一覧表示する方法を学習します。

Pythonの素数とは

素数は、2 つの小さい自然数の積ではない 1 より大きい自然数であることは誰もが知っています。つまり、素数は、1 とそれ自体の 2 つの約数を持つ数です。

たとえば、数字の 2、3、6 を次のように考えます。

数 2 は 1 のちょうど 2 つの約数を持ち、それ自体が素数である必要があります
数 3 は 1 のちょうど 2 つの約数を持ち、それ自体が素数である必要があります
数 6 は 1、2、3、および 6 の 4 つの約数を持っているため、素数ではありません。

Pythonで素数をチェック

素数は1 より大きい数であり、正確に 2 つの約数 ( 1 とそれ自体) しかありません。したがって、与えられた数が1 とそれ自体以外に複数の約数を持つ場合、それは素数ではありません。

これを活用し、1~与えられた数の範囲内に約数があるかどうかを確認するだけで素数をチェックが出来ます。もし1つでも約数がある場合、与えられた数は素数ではないでしょう。

これに基づいて、次のように Python で素数チェッカー関数を作成できます。

def check_prime_number(n):
#flag = 0 => 素数ではない
#flag = 1 => 素数である
flag = 1;
if (n <2):
flag = 0
return flag #2 未満の数は素数ではありません

#1~与えられた数の範囲内に約数があるか
for p in range(2, n):
if n % p == 0:
flag = 0
break #もし1つでも約数がある場合、ループを終了
return flag

この関数を呼び出して、以下のように素数をチェックするプログラムに使用できます。このプログラムには、n を入力して、n が素数かどうかをチェックします。

def check_prime_number(n):
#flag = 0 => 素数ではない
#flag = 1 => 素数である
flag = 1;
if (n <2):
flag = 0
return flag #2 未満の数は素数ではありません

#1~与えられた数の範囲内に約数があるか
for p in range(2, n):
if n % p == 0:
flag = 0
break #もし1つでも約数がある場合、ループを終了
return flag

n = int(input(">> 整数を入力してください: "))


check = check_prime_number(n);

if check == 1:
print(n," :素数である")
else:
print(n," :素数ではない")

入力画面と、素数をチェックする python プログラムの結果は次のようになります。

>> 整数を入力してください: 1
1 素数ではない

>> 整数を入力してください: 2
2 素数である

>> 整数を入力してください: 3
3 素数である

>> 整数を入力してください: 4
4 素数ではない

>> 整数を入力してください: 6
6 素数ではない

n 未満のすべての素数をリストする

上記の方法を使用すると、Python を使用してn 未満のすべての素数をリストできます。

これは、Pythonで n 未満のすべての素数をリストするプログラムの例です。

def check_prime_number(n):
#flag = 0 => 素数ではない
#flag = 1 => 素数である
flag = 1;
if (n <2):
flag = 0
return flag #2 未満の数は素数ではありません

#1~与えられた数の範囲内に約数があるか
for p in range(2, n):
if n % p == 0:
flag = 0
break #もし1つでも約数がある場合、ループを終了
return flag

n = int(input(">> 整数を入力: "))
for i in range(n):
check = check_prime_number(i)
if( check == 1 ) :
print(i)

Kết quả:

>> 整数を入力: 20
2
3
5
7
11
13
17
19

まとめ

上記 Kiyoshi は、 python で素数をチェックする方法と、すでに pythonで n 未満のすべての素数をリストする方法を示しました。レッスンの内容をよりよく理解するために、今日の例を書き直す練習をしてください。

そして、次のレッスンで Python の知識についてさらに学びましょう。

URL Link

https://laptrinhcanban.com/ja/python/nhap-mon-lap-trinh-python/so-trong-python/kiem-tra-so-nguyen-to-trong-python/

この記事は役立つと思ったらいいね!とシェアをお願いします
">

ホーム  › >>

Profile
きよしです!笑

Author: Kiyoshi (Chis Thanh)

Kiyoshi was a former international student in Japan. After graduating from Toyama University in 2017, Kiyoshi is currently working as a BrSE in Tokyo, Japan.