Python

[Python] 소수 출력하기 (리스트 사용)

ruming 2022. 6. 13. 14:19

n까지의 소수를 출력하는 코드

1. 리스트에 소수를 저장하는 방법이다.

list = []
n = 1000
for i in range(2, n+1):
    for j in range(2, i+1):
        if j==i:
            list.append(i)
        if i%j == 0:
            break
print(list)

 

i를 i-1의 수로 나누었을 때 나머지가 없으면 반복문을 종료하고, 나누어 떨어지지 않으면 리스트에 수를 추가한다.

 

[출력 결과]

 

2. 리스트에 n까지의 수를 저장하고 소수의 배수를 제거하는 방법이다.

list = []
n = 1000
for i in range(2, n+1):
    list.append(i)
for i in range(2, n+1):
    for j in range(2, n+1):
        s = i*j
        if s > n:
            break
        if s in list:
            list.remove(s)
print(list)

2부터 n까지의 수를 리스트에 저장. 2의 배수를 리스트에서 제거, 3의 배수를 제거하는 방식으로 리스트에 소수만 남김.

 

[출력 결과]