최근 수정 시각 : 2025-11-05 23:18:35

FizzBuzz


파일:관련 문서 아이콘.svg   관련 문서: 프로그래밍 언어/예제
#!if 문서명2 != null
, [[]]
#!if 문서명3 != null
, [[]]
#!if 문서명4 != null
, [[]]
#!if 문서명5 != null
, [[]]
#!if 문서명6 != null
, [[]]
1
2
Fizz
4
Buzz
...
14
FizzBuzz
...[1]

1. 유래

FizzBuzz는 영국의 어린 아이들이 학교에서 배수를 배우기 위한 일종의 놀이이다.
3의 배수라면 Fizz를, 5의 배수라면 Buzz를 말하고 3의 배수와 5의 배수라면 FizzBuzz를 말하고 그 어디에도 포함되지 않는다면 그냥 그 수를 말하는 간단한 놀이다.

2. 프로그래밍에서

프로그래밍에서는 반복문과, 조건문을 연습하는 간단한 문제이나, FizzBuzz 문제를 풀지 못하는 프로그래머들이 많아지고 있다.그냥 원리만 알려주면 다 할거 같은데 이것 때문에 만들어 진 것이 HQ9F+이다.

2.1. 예시

HQ9F+를 제외한 모든 예시는 1부터 100까지의 FizzBuzz를 실행시킨다.

2.1.1. C, C++

#!syntax cpp
#include <stdio.h>

int main(int argc, char *argv[])
{
    for (int i=1; i<101; i++){
        if (i % 3 == 0 && i % 5 == 0){
            printf("FizzBuzz\n");
        }else if (i % 3 == 0){
            printf("Fizz\n");
        }else if (i % 5 == 0){
            printf("Buzz\n");
        }else{
            printf("%d\n", i);
        }
    }
}

2.1.2. C#

#!syntax csharp
for (int i=1; i<101; i++) {
    if (i % 3 == 0 && i % 5 == 0)
    {
        Console.WriteLine("FizzBuzz");
    }
    else if (i % 3 == 0)
    {
        Console.WriteLine("Fizz");
    }
    else if (i % 5 == 0)
    {
        Console.WriteLine("Buzz");
    }
    else
    {
        Console.WriteLine(i);
    }
}

2.1.3. JavaScript

#!syntax javascript
for(let i=1; i<101 i++){
    if(i % 3 == 0 && i % 5 == 0){
        console.log("FizzBuzz");
    } else if(i % 3 == 0){
        console.log("Fizz");
    } else if(i % 5 == 0){
        console.log("Buzz");
    } else {
        console.log(i);
    }
}

2.1.4. Lua

#!syntax lua
for i = 1, 100 do
    if i % 15 == 0 then
        print("FizzBuzz")
    elseif i % 3 == 0 then
        print("Fizz")
    elseif i % 5 == 0 then
        print("Buzz")
    else
        print(i)
    end
end

2.1.5. Python

#!syntax python
for i in range(1,101):
    if i % 3 == 0 and i % 5 == 0:
        print("FizzBuzz")
    elif i % 3 == 0:
        print("Fizz")
    elif i % 5 == 0:
        print("Buzz")
    else:
        print(i)

2.1.6. Go

#!syntax go
package main

import "fmt"

func main(){
	for i := 1; i < 101; i++ {
		if i % 15 == 0 {
			fmt.Println("FizzBuzz")
		}else if i % 3 == 0 {
			fmt.Println("Fizz")
		}else if i % 5 == 0 {
			fmt.Println("Buzz")
		}else{
			fmt.Println(i)
		}
	}
}

2.2. 난해한 프로그래밍 언어

2.2.1. HQ9F+

F

지금까지 나온 예시중에서 가장 쉽다
[1] 이론상 무한히이어 질 수 있다.