プログラミングの練習問題として有名な問題として、
FizzBuzz問題というものがあります。
今回は、VBScriptでFizzBuzzを実装してみたいと思います。
FizzBuzz問題について
実は、名前は有名なので知っていたのですが、
プログラムを書いたことは有りませんでした。
FizzBuzz問題の一般的な仕様は、以下の通りです。
3で割り切れる場合は「Fizz」(Bizz Buzzの場合は「Bizz」)、5で割り切れる場合は「Buzz」、両者で割り切れる場合(すなわち15で割り切れる場合)は「Fizz Buzz」(Bizz Buzzの場合は「Bizz Buzz」)を数の代わりに発言しなければならない。
↓作成したコード
' VBScript BizzBuzz. Option Explicit Const LOOP_END_COUNT = 100 Dim i For i = 1 To LOOP_END_COUNT if i Mod 3 = 0 and i Mod 5 = 0 Then WScript.echo "FizzBuzz " & i ' elseif i Mod 3 = 0 Then WScript.echo "Fizz " & i elseif i Mod 5 = 0 Then WScript.echo "Buzz " & i else WScript.echo i End if Next
久々にvbsを書きました。
面白みのないコードになりました(笑)
尚、久々にvbsを実行してみて思い出しましたが、WScript.echoは、
wshで標準実行を行うと、メッセージダイアログボックスの形で出力を行います。
なので、挙げさせて頂いたコードをファイル保存してそのまま実行すると、
以下の様に、1~100までメッセージボックスで順に表示してしまいます。
WScript.echoコンソール出力指定方法
確認するのが非常に面倒なので、
同じ構文のまま、コンソール出力を行ってくれるcscriptを利用して実行しました。
形式:cscript vbsファイル名
テキストファイル等にリダイレクトして出力しても良いですが、
cscriptは手軽に確認出来て便利です。
vbsは、久々に書いてみましたが、
意外とループの表記方法を忘れていたりするので、
非常に軽いウォーミングアップにはなる気がします。
他のプログラム言語でも書いてみたいと思います。