English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Pythonで素数を探す方法

まず、素数とは何かを知らなければなりません。

質数は常に正の整数であり、2の整数(1数字自体(1素数ではありません。

現在、素数を探す方法について説明します。

方法1

Forループを使用して

def primemethod1(number):
   # Initialize a list
   my_primes = []
   for pr in range(2, number):
      isPrime = True
   for i in range(2, pr):
   if pr % i == 0:
      isPrime = False
   if isPrime:
      my_primes.append(pr)
   print(my_primes)
primemethod1(50)

出力結果

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]

方法2

breakを含むループについて

def primemethod2(number):
   # Initialize a list
   my_primes = []
   for pr in range(2, number + 1)
      isPrime = True
   for num in range(2, pr):
   if pr % num == 0:
      isPrime = False
   break
      if isPrime:
   my_primes.append(pr)
return(my_primes)
print(primemethod2(50)

出力結果

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]

方法3

ループ、break、平方根について

def primemethod3(number):
   # Initialize a list
   primes = []
   for pr in range(2, number):
      isPrime = True
   for num in range(2, int(pr ** 0.5) + 1)
   if pr % num == 0:
      isPrime = False
      break
   if (isPrime):
print("素数:",pr)
primemethod3(50)

出力結果

素数: 2
素数: 3
素数: 5
素数: 7
素数: 11
素数: 13
素数: 17
素数: 19
素数: 23
素数: 29
素数: 31
素数: 37
素数: 41
素数: 43
素数: 47