728x90
import csv
def sieve_of_eratosthenes(n):
primes = [True for _ in range(n+1)]
primes[0] = primes[1] = False
p = 2
while p * p <= n:
if primes[p] == True:
for i in range(p * p, n+1, p):
primes[i] = False
p += 1
prime_numbers = [i for i in range(2, n+1) if primes[i]]
return prime_numbers
# 사용자로부터 수 입력 받기
user_input = int(input("최대 범위 수를 입력하세요: "))
result = sieve_of_eratosthenes(user_input)
# 결과를 CSV 파일로 저장
file_name = f"prime_numbers_up_to_{user_input}.csv"
with open(file_name, mode='w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Prime Numbers'])
for prime in result:
writer.writerow([prime])
print(f"{file_name} 파일에 소수 목록을 저장했습니다.")
728x90
'PY(Python Image Processing) > 중학수학기초' 카테고리의 다른 글
| 09최대공약수와최소공배수 (0) | 2024.08.15 |
|---|---|
| 08소인수분해 (0) | 2024.08.15 |
| 06_0과절대값 (0) | 2024.08.15 |
| 05무리수와실수 (0) | 2024.08.15 |
| 04제곱근 (0) | 2024.08.15 |