LoginSignup
0
0

More than 3 years have passed since last update.

JavaScriptでFizzBuzz

Last updated at Posted at 2021-03-30

以前Rubyで記述したコード

Fizzbuzz
def fizz_buzz
  num = 1
  while (num <= 100) do
    if num % 15 == 0
      puts "FizzBuzz"
    elsif (num % 3) == 0
      puts "Fizz"
    elsif (num % 5) == 0
      puts "Buzz"
    else
      puts num
    end
    num = num + 1
  end
end

fizz_buzz

FizzBuzz問題の解説
fizz_buzz問題で使用された表現

今回は上記のRubyで取り組んだ過去のコードを参考にして
JavaScriptでFizzbuzz問題にトライしてみた

JavaScriptで記述したコード

以下が作成したコード

Fizzbuzz
for( let i = 1; i <= 100; i ++ ) {  // for文を採用
// (初期値; 繰り返しの条件式; 処理の後にされる式)

  if( i % 15 === 0 ) { // iを15で割り切る事が出来る数字の時
    console.log("FizzBuzz"); // 第1条件の出力結果

  } else if ( i % 5 === 0 ) { // iを5で割り切る事が出来る数字の時
    console.log("Buzz"); // 第2条件の出力結果

  } else if ( i % 3 === 0 ) { // iを3で割り切る事が出来る数字の時
    console.log("Fizz"); // 第3条件の出力結果

  } else { // 上記のどれともマッチしなかった時の処理
    console.log( i ); // その他の出力結果
  }
}

デベロッパーツールで確認

上記のコードをhtmlファイルの<script></script>内に記述して
ブラウザにドラッグアンドドロップ

+ + Jこのコマンドでデベロッパーツールを確認すると
以下のように出力されている

デベロッパーツール
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
・
・・
・・・

1〜100までの数字が順番に出力

「3の倍数」のときは数字の代わりに文字列でFizz
「5の倍数」のときも同様にBuzz

3と5の倍数である「15の倍数」のときはFizzBuzzと出力

補足

他にも書き方がありそうだと思って

JavaScript FizzBuzz

と調べるとなんとまさかの一行で完成させる方法もあるそうです。
今の私には読み進めても全く解らなかったです。残念…

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0