안녕하세요. 춘삼이의 블로그입니다.
코드카데미 파이썬(Codecademy Python) 강좌 해설 5번째 시간입니다. 이번 문제는 반복문 챕터의 [연습이 최고를 만든다]에 5번째 문제 [소수인지 확인하기(is_prime)] 입니다.
정수 x를 입력값으로 하는 함수 is_prime을 만들고 정수 x가 소수라면 True, 소수가 아니라면 False를 반납하도록 구현하면 됩니다.
- 주의사항으로 2보다 작은 경우에는 소수가 아니라고 알려주고 있습니다.
일단 완성된 코드는 아래와 같구요.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | def is_prime(x): # x를 입력값으로 갖는 is_prime 함수 생성 if x < 2: # x가 2보다 작은 경우 False를 반환 return False elif x == 2: # x가 2인 경우에는 True를 반환 return True else: for i in range(2,x): # 2부터 x까지 범위를 반복 연산 if x % i == 0: # x를 i로 나누어 나머지가 0이되는 경우 소수가 아님 return False # False를 반환 return True x=raw_input("Enter Number : ") # 인자 x의 값을 사용자로부터 입력 print str(is_prime(int(x))) # is_prime을 호출하고 결과값을 출력 | cs |
- 13열 이하로는 없어도 문제는 패스입니다.
- 12열 : raw_input은 콘솔상에 질의하고자 하는 문자열을 출력하고 사용자 입력값을 반환하는 함수입니다.
- 2-3열 : x가 2보다 작은 경우에는 무조건 소수가 아닙니다. False 반환
- 4-5열 : x가 2인 경우에는 무조건 소수입니다. True 반환
- 7열-9열 : 2부터 x까지의 범위에서 i를 증가시키면서 x를 i로 나눈값이 0인지 점검하여 0과 같다면 False를 반환합니다.
- 11열 : 위의 if문을 거치는 동안 True, False를 반환하지 않았다면 그 수는 소수이므로 True를 반환합니다.
전 갑자기 소수가 나오길래 순간 당황했네요. 아마 이 글 보시는 분들은 쉽게 풀 수 있는 문제였을 듯 합니다.
'프로그래밍 > 파이썬(Python)' 카테고리의 다른 글
코드카데미 파이썬(Codecademy Python) 강좌 – 자음 걸러내기(anti_vowel) (0) | 2015.11.22 |
---|---|
코드카데미 파이썬(Codecademy Python) 강좌 - 문자열 뒤집기(reverse) (0) | 2015.11.20 |
코드카데미 파이썬(Codecademy Python) 강좌 - 계승 또는 팩토리얼(factorial) (0) | 2015.11.15 |
코드카데미 파이썬(Codecademy Python) 강좌 - 숫자들의 합 구하기 (0) | 2015.11.14 |
코드카데미 파이썬(Codecademy Python) 강좌 - 정수인지 확인하기 (1) | 2015.11.12 |