def prime(num):
if num < 2:
return False
i = 2
while i * i <= num:
if num % i == 0:
return False
i += 1
return True
m, n = map(int, input().split())
for i in range(m, n + 1):
if prime(i):
print(i)
풀이
점점 def로 함수를 정의해서 푸는게 익숙해지고 있어요..!!🙌 (장족의 발전🤣)
def로 정의한 함수를 먼저 풀이해보면, prime으로 소수에 대한 변수를 설정하고
그에 대한 인자(argument)로 num 변수를 설정했어요.
다음으로 if문으로 1은 소수가 아니므로 걸러주고
(if num <=1 로 코드를 진행해도 괜찮습니다)
다음으로 def 함수를 호출할 때마다 i를 2로 계속해서 초기화 하기 위해서 i를 2로 초기화 시켜두고
while문을 사용해서 2의 제곱인 4보다 num가 클 때 if문이 동작하게 코드를 작성했어요.
while문이 True면 if문으로 가서 num % 2 == 0, 즉 num가 짝수인지 판별해서
짝수라면 False를 return하고 i + 1을 더해주고 다음으로 넘어가요.
반대로 while문에서 바로 빠져나오고 False가 아닌 True를 return하게 되면
맨 마지막 for문에서 if문의 조건인 prime(i)가 True가 되므로 if문을 실행해서