
- for문과 if문을 활용한 소수판단 코드 구현 -
<개요>
1. 테스트할 숫자를 userinput으로 받습니다.
2. for문을 돌면서 testNum을 testNum보다 작은 숫자들로 나누어 나머지가 0인지 확인합니다.
3. 나머지가 0이면 나누어 떨어지는 숫자가 존재하므로 소수가 아닙니다.
4. testNum보다 작은 숫자들 중 for문을 다 돌 때까지 나머지가 0인 숫자가 없으면 소수입니다.
<코드 설명>
# 테스트할 숫자를 userinput 으로 받음
testNum = int(input('숫자를 입력하세요 : '))
# for 문을 이용해 testNum 보다 작을 숫자들을 소수인지 판단할 것임
# i --> 2 ~ testNum-1
for i in range(2, testNum):
# testNum 을 i 로 나눴을 때 나머지가 0이 되는 i 가 있다 --> 소수가 아니라는 뜻
if testNum % i == 0:
print('Not Prime Number')
break
# i 가 testNum-1 까지 도달하면 소수라고 판단
elif i == testNum - 1:
print("Prime Number")
testNum이 15이면,
for문을 통해 i의 범위는 (2 ~ 14) 입니다.
% (모듈러스) 는 나머지를 의미하며,
15 / i 를 했을 때 나머지가 0인 i가 존재하면 'Not Prime Number'를 출력하고 프로그램 종료합니다.
위 경우 i가 3이되면 15 % 3 = 0 이므로 코드가 종료됩니다.
다음으로 소수인 경우
testNum이 7이면,
i의 범위는 (2 ~ 6) 입니다.
7 / i 를 했을 때 나머지가 0인 i가 없습니다.
i는 6까지 가게 되며 for문 종료와 동시에 'Prime Number'를 출력하고 프로그램은 종료합니다.
<실행 화면>
- Just Do It -
반응형
'Python > Basic' 카테고리의 다른 글
[Python] 계산기 (0) | 2021.06.27 |
---|---|
[Python] 커피머신 (0) | 2021.06.20 |