2011/01/18

php FizzBuzz

「FizzBuzz」問題の一般的な資料はこちらを参照して下さい。

初心者のプログラミング体験記  PHP練習[4]:FizzBuzz問題
FizzBuzz問題を解いてみたのですが・・(PHP)

なお、三項演算子についてはこちらを参照して下さい。

一応私も作ってみました。
<?php
/**
 * 内容
 * 1-100の整数を表示
 * ただし、3の倍数のときは整数の代わりにFizzと表示
 * 5の倍数のときはBuzzと表示
 * (公倍数ならFizzBuzzと表示)
 * @name   fizzbuzz.php
 * @author
 * @since  2011.1.xx
 *
 *
 */

print '<table border="1">' ;
print " <caption>【FizzBuzz】</caption>" ;

for ($i=0; $i<10; $i++) {
    print "<tr>" ;
    for ($j=1; $j<=10; $j++) {
        $str = "" ;
        $color = "ffffff" ;
        $k = $i*10 + $j ;
        if (($k % 3) == 0) {
            $str = "Fizz" ;
            $color = "00ffff" ;
        }
        if (($k % 5) == 0) {
            if (($k % 3) == 0) {
                $color = "00ff00" ;
            } else {
                $color = "ffff00" ;
            }
            $str .= "Buzz" ;
        }
        print  '<td bgcolor="#' . $color . '">' ;
        if ($str == "") {
            print $k  ;
        } else {
            print $str  ;
        }
        print "</td>" ;
    }
    print "</tr>" ;
}
print "</table >" ;

fizzbuzzの出力結果はこちらになります。

0 件のコメント:

コメントを投稿