PHP

暇つぶしにFizzBuzzしてみた

More than 1 year has passed since last update.

有名なFizzBuzzちゃんを今さらやってみました。

一応ルールは

  • 3の倍数のときは「[数字]はFizz!」と出力
  • 5の倍数のときは「[数字]はBuzz!」と出力
  • 3の倍数かつ5の倍数の場合は「[数字]はFizzBuzz!!」

ここから自己流特殊ルール

  • 3を含む数字は「3を含んだ数字、その名は[数字]そしてFizz!」
  • 5を含む数字は「5を含んだ数字、その名は[数字]そしてBuzz!」

てな具合でやってみた。

study.php
for($i=1;$i<=1000;$i++){
    $check = checker($i);
    if(!empty($check)){
        echo $check;
        continue;
    }
    if($i % 3 === 0 && $i % 5 === 0){
        echo $i.'はFizzBuzz!!<br>';
    }else if($i % 3 === 0){
        echo $i.'はFizz!!<br>';
    }else if($i % 5 === 0){
        echo $i.'はBuzz!<br>';
    }else{
        echo $i.'<br>';
    }
}
function checker($i){
    $num = strval($i);
    $result = "";
    if(strstr($num,'3')){
        $result = '3を含んだ数字、その名は'.$i.'そしてFizz!<br>';
    }else if(strstr($num,'5')){
        $result = '5を含んだ数字、その名は'.$i.'そしてBuzz!<br>';
    }
    return $result;
}

一応できたがこれでよかったのか・・・
もっと綺麗な方法があったのでは・・
もっとイケメンに書ける方いたら共有して頂けると嬉しいです!

まとめ

初心に戻ってこういう問題を久々にやるとあの頃を思い出しました。
マークダウンの練習も兼ての投稿でした!ありがとうございました!