✏️ STUDY/📍 coding
[Python 기초] 문제 1. 이상한 수학 문제
나무울
2022. 11. 13. 09:00
[ 문제 ]
while문과 if문을 활용하여, 100 이하의 자연수 중 8의 배수이지만 12의 배수는 아닌 것을 모두 출력하세요.
예를 들어서 16은 8의 배수이지만 12의 배수가 아니니까 조건에 부합합니다. 하지만 48은 8의 배수이면서 12의 배수이기도 해서 조건에 부합하지 않습니다.
[ 정답 코드 ]
i = 1
while i <= 100:
if i % 8 == 0 and i % 12 != 0:
print(i)
i += 1
[ 보충 설명 ]
- i가 8의 배수라면 i % 8의 결괏값이 0일 것이고, i가 12의 배수라면 i % 12의 결괏값이 0일 것이다.
- i % 8 == 0 and i % 12 != 0을 만족하는 경우에만 i를 출력한다.
- i += 1은 if문 밖에 있어야 한다. 그렇지 않으면 끝이 안 나는 '무한 루프'에 빠지게 된다.