article thumbnail image
Published 2021. 6. 20. 14:39

- 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
복사했습니다!