[Pythhon] 탄성체로 소수를 체질하다
파이톤으로 C# 쓴 거 써봤어요.
어제의 항목에 쓰인 C#의 코드가 파이톤이면 어떻게 되는지 다시 한번 짚어봤다.
파이썬 코드
※ 2018/4/24 수정
변수 이름 'dict' 를 'dic' 으로 변경합니다.("dict"는 내장 함수 이름으로 변수 이름으로 적합하지 않음)fr = 1
to = 200
# ディクショナリ初期化
# keyは整数、
# valueはステータス(0:判定前、1:消した(素数でない)、2:○をつけた(素数))
dic = {}
for i in range(1, to + 1):
dic[i] = 0
# 単数の1を消す
dic[1] = 1
prime_number = 2
# 素数の2乗が範囲内のところまでループ
while prime_number * prime_number < to:
# 未判定の最小値を素数とする
prime_number = min([item[0] for item in dic.items() if item[1] == 0])
# ○をつけた(2を立てる)
dic[prime_number] = 2
# 未判定の値のうち、素数の倍数のリスト取得
target_numbers = [item[0] for item in dic.items() if item[1] == 0 and item[0] % prime_number == 0]
for n in target_numbers:
# 合成数として消す(1を立てる)
dic[n] = 1
# 残った値は全部素数として○をつける(2を立てる)
remain_numbers = [item[0] for item in dic.items() if item[1] == 0]
for n in remain_numbers:
dic[n] = 2
# 素数と判定された値を出力
prime_numbers = [item[0] for item in dic.items() if item[1] == 2]
print (prime_numbers)
결과 내보내기
출력은 다음과 같습니다.OK!
C#에서 Link to Object를 계속 사용하고 있습니다.
파이썬이면 귀찮을 수도 있는데?그렇게 생각하지만 그렇지는 않아요.
리스트 내포는 매우 편리함을 나타낸다.
Reference
이 문제에 관하여([Pythhon] 탄성체로 소수를 체질하다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/jinka1997/items/edd08e0597ab0376681b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
fr = 1
to = 200
# ディクショナリ初期化
# keyは整数、
# valueはステータス(0:判定前、1:消した(素数でない)、2:○をつけた(素数))
dic = {}
for i in range(1, to + 1):
dic[i] = 0
# 単数の1を消す
dic[1] = 1
prime_number = 2
# 素数の2乗が範囲内のところまでループ
while prime_number * prime_number < to:
# 未判定の最小値を素数とする
prime_number = min([item[0] for item in dic.items() if item[1] == 0])
# ○をつけた(2を立てる)
dic[prime_number] = 2
# 未判定の値のうち、素数の倍数のリスト取得
target_numbers = [item[0] for item in dic.items() if item[1] == 0 and item[0] % prime_number == 0]
for n in target_numbers:
# 合成数として消す(1を立てる)
dic[n] = 1
# 残った値は全部素数として○をつける(2を立てる)
remain_numbers = [item[0] for item in dic.items() if item[1] == 0]
for n in remain_numbers:
dic[n] = 2
# 素数と判定された値を出力
prime_numbers = [item[0] for item in dic.items() if item[1] == 2]
print (prime_numbers)
Reference
이 문제에 관하여([Pythhon] 탄성체로 소수를 체질하다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/jinka1997/items/edd08e0597ab0376681b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)