파이썬 예제 : 수학 문제(2)
예제를 풀면서 파이썬(Python)을 익혀 보도록 하겠습니다.
실습문제로는 수학 문제로 좀 꼬아놓은 수학 문제입니다.
문제
10보다 작은 2 또는 3의 배수는 2, 3, 4, 6, 8, 9이며, 이들의 합은 32입니다.
while문과 if문을 활용하여, 1,000보다 작은 자연수 중 2 또는 3의 배수의 합을 출력하는 프로그램을 써 보세요.
출력 예시
333167
333167
힌트
1. 먼저 '2 또는 3의 배수'라는 조건은 무시하고 생각합시다. 그냥 10보다 작은 자연수의 합을 출력하는 프로그램을 써 보세요.
2. 10보다 작은 자연수의 합을 출력하는 프로그램을 쓰기 위해서는 누적된 합을 보관하는 변수가 필요한데요. 우리는 그 변수를 total이라고 하겠습니다. 그러면 이렇게 작성할 수 있습니다.
i = 1
total = 0
while i < 10:
total += i # total = total + i와 동일
i += 1 # i = i + 1과 동일
print(total)
3. 2 또는 3의 배수인지 판단하기 위해서는, 2 또는 3으로 나누어 떨어지는지 확인해야 합니다. 어떤 수가 2 또는 3으로 나누어 떨어진다는 것은, 2 또는 3으로 나누었을 때 나머지가 0이라는 의미입니다.3. 힌트 2에서 한 가지 조건만 추가하면 됩니다. total += 1을 매번 하는 게 아니라, i가 '2 또는 3의 배수'라는 조건을 부합할 때만 부르는 거죠.
4. i라는 변수가 2로 나누어 떨어지는지 확인하는 코드는 i % 2 == 0입니다. i라는 변수가 3으로 나누어 떨어지는지 확인하는 코드는 i % 3 == 0입니다. 그렇다면 i가 2 또는 3으로 나누어 떨어지는지 확인하는 코드는?
그냥 불린 연산 or을 사용해서 i % 2 == 0 or i % 3 == 0입니다.
정답
main.py
i = 1
total = 0
while i < 1000:
if i % 2 == 0 or i % 3 == 0:
total += i
i += 1
print(total)
정답
Related References
요약 : sparta coding club, 스파르타 코딩, 코드잇, 노마드 코더, 프로그래밍, 직장인 코딩, 내일 배움 카드 코딩, 밀크티 코딩, 초등 코딩, 아이스크림 코딩, 코딩 소프트웨어, 파이썬 국비 지원, 파이썬 교육
'TESTING > PROGREMING' 카테고리의 다른 글
[파이썬 코딩 - Chap.10] 실습 미니의 우승 상금 문제 풀어보기 (0) | 2020.11.12 |
---|---|
[파이썬 코딩 - Chap.9] 실습 간단한 약수 찾기 문제 풀어보기 (0) | 2020.11.10 |
[파이썬 코딩 - Chap.7] 실습 간단한 수학(1) 문제 풀어보기 (0) | 2020.11.04 |
[파이썬 코딩 - Chap.6] 실습 간단한 학점 계산기 문제 풀어보기 (0) | 2020.11.04 |
[파이썬 코딩 - Chap.5] 실습 간단한 거스름 돈 계산기 문제 풀어보기 (0) | 2020.11.03 |