트랙
/
Python
Python
/
연습 문제
/
N번째 소수
N번째 소수

N번째 소수

쉬움

지침

숫자 n이 주어졌을 때, n번째 소수가 무엇인지 구해요.

처음 여섯 개의 소수 2, 3, 5, 7, 11, 13을 나열해 보면 6번째 소수는 13이라는 것을 알 수 있어요.

사용하는 언어의 표준 라이브러리에 소수를 다루는 메서드가 있더라도, 그런 메서드는 없는 척하고 직접 구현해 봐요.

예외 메시지

때로는 예외를 발생시키는 것이 필요해요. 이때는 오류의 원인이 무엇인지 알려주는 의미 있는 오류 메시지를 항상 포함해야 해요. 이렇게 하면 코드를 더 읽기 쉽게 만들고 디버깅에도 큰 도움이 돼요. 오류 원인이 특정 유형일 것이라고 아는 상황이라면 내장 오류 유형 중 하나를 발생시켜도 되지만, 그래도 의미 있는 메시지는 포함해야 해요.

이 연습 문제에서는 prime() 함수가 잘못된 입력을 받았을 때 raise 문을 사용해 ValueError를 "던져야" 해요. 이 연습 문제는 _양수_만 다루기 때문에, 1보다 작은 수는 모두 잘못된 입력이에요. exception을 raise하면서 그와 함께 메시지도 포함해야만 테스트를 통과할 수 있어요.

메시지와 함께 ValueError를 발생시키려면, 메시지를 exception 유형의 인자로 작성해요:

# when the prime function receives malformed input
raise ValueError('there is no zeroth prime')
GitHub에서 편집 링크가 새 창이나 탭에서 열려요
Python Exercism

N번째 소수 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Python 트랙을 개념 17개연습 문제 146개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.