20.1 1부터 100까지 숫자 출력하기

Unit 20. FizzBuzz 문제

FizzBuzz는 매우 간단한 프로그래밍 문제이며 규칙은 다음과 같습니다.

  1. 1에서 100까지 출력
  2. 3의 배수는 Fizz 출력
  3. 5의 배수는 Buzz 출력
  4. 3과 5의 공배수는 FizzBuzz 출력

즉, 1부터 100까지 숫자를 출력하면서 3의 배수는 숫자 대신 'Fizz', 5의 배수는 숫자 대신 'Buzz', 3과 5의 공배수는 숫자 대신 'FizzBuzz'를 출력하면 됩니다.

설명을 보면서 따라하기 전에 스스로 이 문제를 풀어보는 것이 좋습니다. 문제를 풀지 못해도 고민한 만큼 기억에 오래 남습니다.

특히 FizzBuzz 문제는 프로그래밍 면접에 자주 등장하는 문제입니다. 문제 조건을 꼼꼼히 따지지 않으면 경력자도 실수하기 쉽고, 면접에서 탈락하기도 합니다. 그만큼 기초실력을 가늠하는 문제이기 때문에 잘 알아 두면 좋습니다.

20.1 1부터 100까지 숫자 출력하기

FizzBuzz 문제는 반복문, 조건문, 나머지 연산자, 비교 연산자를 모두 동원해야 풀 수 있습니다. 먼저 1부터 100까지 숫자를 출력해보겠습니다. 다음 내용을 IDLE의 소스 코드 편집 창에 입력한 뒤 실행해보세요.

print_1_to_100.py

for i in range(1, 101):    # 1부터 100까지 100번 반복
    print(i)

실행 결과

1
2
3
... (생략)
98
99
100

forrange로 1부터 100까지 100번 반복하면서 print로 변수의 값을 출력하면 됩니다. range에서 반복되는 마지막 숫자는 끝나는 숫자보다 1이 더 작으므로 101을 지정해야 되겠죠?