プログラミングの実力や個性を試す問題として「FizzBuzz問題」が有名です。

  • 1から100までの数を表示する。
  • 3の倍数のときは,数の代わりにFizzと表示する。
  • 5の倍数のときは,数の代わりにBuzzと表示する。
  • 3の倍数かつ5の倍数のときは,数の代わりにFizzBuzzと表示する。
  • それ以外のときは,その数を表示する。
<実行結果>
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
...

シンプルなルールですが,自分でプログラムを作ってみると,順次・反復・分岐という基本構造が全て登場するので,実力を試すのによい問題と言われています(もちろん,あなたの個性も見えてきます)。

なお,このページでは,Fizzの代わりに「パン」,Buzzの代わりに「ごはん」と表示しています。

なでしこでFizzBuzz

サンプルプログラムはここをクリック

100回
  もし,(回数%3=0)かつ(回数%5=0)ならば
    「パンとごはん」と表示。
  違えばもし,(回数%3=0)ならば
    「パン」と表示。
  違えばもし,(回数%5=0)ならば
    「ごはん」と表示。
  違えば
    回数を表示。
  ここまで。
ここまで。

JavascriptでFizzBuzz

var i;

for( i=1; i<=100; i++ ) {
    if( (i%3 == 0) && (i%5 == 0) ) {
        console.log( "パンとごはん" );
    } else if ( i%3 == 0 ) {
        console.log( "パン" );
    } else if ( i%5 == 0 ) {
        console.log( "ごはん" );
    } else {
        console.log(i);
    }
}

Python3でFizzBuzz

for i in range(1, 101):
    if ( i%3 == 0 ) and ( i%5 == 0 ):
        print("パンとごはん")
    elif i%3 == 0:
        print("パン")
    elif i%5 == 0:
        print("ごはん")
    else:
        print(i)

RubyでFizzBuzz

for i in 1..100
    if ( i%3 == 0 ) && ( i%5 == 0 )
        puts "パンとごはん"
    elsif i%3 == 0
        puts "パン"
    elsif i%5 == 0 
        puts "ごはん"
    else
        puts i
    end
end

Visual BasicでFizzBuzz

    Dim i as Integer
    
    For i = 1 To 100
        If (i mod 3 = 0) and (i mod 5 = 0) Then
            Console.WriteLine("パンとごはん")
        Else If i mod 3 = 0 Then
            Console.WriteLine("パン")
        Else If i mod 5 = 0 Then
            Console.WriteLine("ごはん")
        Else
            Console.WriteLine(i)
        End If
    Next