본문 바로가기

Baekjoon

[Baekjoon]백준 1929 소수 구하기(실버 3) - Python

문제설명

문제는 간단하다 m이상 n이하의 소수를 한 줄에 하나씩 모두 출력하면 된다

소수를 확인하기 위해서는 이전 문제였던 4134 다음 소수 문제에서도 말했듯이 

제곱근까지만 확인을 하면 된다 이를 이용한 함수를 하나 만든 후에 범위 내의 숫자를 늘려가며 확인하는 코드를 작성하자

 

먼저, 코드를 작성하기 전에 입력받은 수가 1인 경우에는 소수가 아니므로 False를 반환하는 부분이 존재해야 한다

그 외의 부분들은 이전 문제에서 작성한 코드와 거의 동일하다 

if 문을 통해 i의 값이 소수인지 확인하고 True가 반환되면 그 값을 출력하면 된다

def Is_prime(num):
    if num == 1:
        return False
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            return False
    return True

min, max = map(int, input().split())

for i in range(min, max + 1):
    if Is_prime(i):
        print(i)