/** * @dataProvider providerNonFzBz */ public function testNonFzBz($ans, $input) { $this->assertEquals($ans, fizz_buzz($input), 'non Fizz-Buzz fail'); }
<?php function fizz_buzz($n) { for ($i = 1; $i < $n; $i++) { if ($i % 3 == 0 && $i % 5 == 0) { echo $i . ": FizzBuzz \n"; } else { if ($i % 5 == 0) { echo $i . ": Buzz \n"; } else { if ($i % 3 == 0) { echo $i . ": Fizz \n"; } else { echo $i . " \n"; } } } } } fizz_buzz(20);
<?php function fizz_buzz($number, $fizz, $buzz) { if ($number % $fizz == 0 && $number % $buzz == 0) { return "FB"; } elseif ($number % $fizz == 0) { return "F"; } elseif ($number % $buzz == 0) { return "B"; } else { return $number; } } $fh = fopen($argv[1], "r"); while (!feof($fh)) { $test = trim(fgets($fh)); $game_result = ""; $game_set = explode(" ", $test); for ($i = 1; $i < $game_set[count($game_set) - 1] + 1; $i++) { $game_result .= fizz_buzz($i, $game_set[0], $game_set[1]) . " "; } echo trim($game_result) . "\n"; } fclose($fh);
<?php require 'Fizz-Buzz.php'; echo "Test 'Fizz-Buzz' from 1 to 100: \n"; for ($input = 1; $input <= 100; $input++) { $ans = fizz_buzz($input); echo "{$input} ==> {$ans} \n"; }
<?php function fizz_buzz($n) { for ($i = 1; $i < $n; $i++) { if ($i % 3 == 0 && $i % 5 == 0) { echo $i . " : FizzBuzz\n"; } else { if ($i % 5 == 0) { echo $i . " : Buzz\n"; } else { if ($i % 3 == 0) { echo $i . " : Fizz\n"; } else { echo $i . "\n"; } } } } } fizz_buzz(23);
<?php $filename = $argv[1]; $test_cases = fopen($filename, 'r+'); function fizz_buzz($test_cases) { while ($line = fgets($test_cases)) { if (substr($line, -1) == '\\n') { $line = substr($line, 0, -1); } list($fizz, $buzz, $goal) = explode(' ', $line); $output = ''; for ($i = 1; $i <= $goal; $i++) { if ($i % $fizz == 0) { $output .= 'F'; } if ($i % $buzz == 0) { $output .= 'B'; } if ($i % $fizz != 0 && $i % $buzz != 0) { $output .= strval($i); } $output .= ' '; } echo substr($output, 0, -1) . "\n"; } } fizz_buzz($test_cases); fclose($test_cases);
/** * @dataProvider provider */ public function testOne($ans, $input) { $this->assertEquals($ans, fizz_buzz($input)); }