[ 문제 ]
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문 밖에 있어야 한다. 그렇지 않으면 끝이 안 나는 '무한 루프'에 빠지게 된다.
'✏️ STUDY > 📍 coding' 카테고리의 다른 글
[Python 기초] 문제 3. 거스름돈 계산기 (0) | 2022.11.21 |
---|---|
[Python 기초] 문제 2. 피보나치 수열 (0) | 2022.11.20 |
[Python 기초] 3. 제어문 (0) | 2022.11.12 |
[Python 기초] 2. 추상화 (0) | 2022.11.11 |
[Python 기초] 1. 자료형 (0) | 2022.11.10 |