pythonの処理で素数算出のコードを書いてみました。
関数にして、算出する数値範囲を指定できるようにしています。
## 素数算出処理
def get_prime_num(max_num):
prime_num = []
counter = 0
# 素数判定(max_numは指定変数) # rangeのスタートを2からにしているのは、1を除外する必要がある為。
for i in range(2, max_num + 1):
flg = True
for j in prime_num:
counter += 1
# 余りが0であれば素数ではないので、flg=Falseを設定してbreak(次の値判定へ)
if i % j == 0:
flg = False
break
# 余りが0以外であれば素数としてprime_numにその値を設定する
if flg:
prime_num.append(i)
# 素数判定にprime_num値を利用するが、1が入ると、すべて素数判定される為、最後に値を手動で入れる
prime_num.insert(0, 1)
# 素数と素数算出の除算回数を戻す
return prime_num,counter
## 素数算出処理
def get_prime_num(max_num):
prime_num = []
counter = 0
# 素数判定(max_numは指定変数) # rangeのスタートを2からにしているのは、1を除外する必要がある為。
for i in range(2, max_num + 1):
flg = True
for j in prime_num:
counter += 1
# 余りが0であれば素数ではないので、flg=Falseを設定してbreak(次の値判定へ)
if i % j == 0:
flg = False
break
# 余りが0以外であれば素数としてprime_numにその値を設定する
if flg:
prime_num.append(i)
# 素数判定にprime_num値を利用するが、1が入ると、すべて素数判定される為、最後に値を手動で入れる
prime_num.insert(0, 1)
# 素数と素数算出の除算回数を戻す
return prime_num,counter
## 素数算出処理 def get_prime_num(max_num): prime_num = [] counter = 0 # 素数判定(max_numは指定変数) # rangeのスタートを2からにしているのは、1を除外する必要がある為。 for i in range(2, max_num + 1): flg = True for j in prime_num: counter += 1 # 余りが0であれば素数ではないので、flg=Falseを設定してbreak(次の値判定へ) if i % j == 0: flg = False break # 余りが0以外であれば素数としてprime_numにその値を設定する if flg: prime_num.append(i) # 素数判定にprime_num値を利用するが、1が入ると、すべて素数判定される為、最後に値を手動で入れる prime_num.insert(0, 1) # 素数と素数算出の除算回数を戻す return prime_num,counter
# 素数判定処理の実行と実行結果の取得:実行時には、素数の算出最大値をパラメータに渡す。以下では100以下の値を対象とする
Prime_Number = get_prime_num(100)
# 算出結果の表示
print('除算を行った回数:{}'.format(Prime_Number [-1]))
print('算出した素数:{}'.format(Prime_Number [0:-1]))
# 素数判定処理の実行と実行結果の取得:実行時には、素数の算出最大値をパラメータに渡す。以下では100以下の値を対象とする
Prime_Number = get_prime_num(100)
# 算出結果の表示
print('除算を行った回数:{}'.format(Prime_Number [-1]))
print('算出した素数:{}'.format(Prime_Number [0:-1]))
# 素数判定処理の実行と実行結果の取得:実行時には、素数の算出最大値をパラメータに渡す。以下では100以下の値を対象とする Prime_Number = get_prime_num(100) # 算出結果の表示 print('除算を行った回数:{}'.format(Prime_Number [-1])) print('算出した素数:{}'.format(Prime_Number [0:-1]))
◆上記の実行結果↓
