fork download
  1. <?php
  2.  
  3. function tekaTekiTeko(int $batas): void {
  4. // Validasi: batas harus >= 20
  5. if ($batas < 20) {
  6. throw new InvalidArgumentException("Parameter \$batas harus memiliki nilai minimal 20.");
  7. }
  8.  
  9. // Loop dari 1 sampai $batas
  10. for ($i = 1; $i <= $batas; $i++) {
  11. $output = "";
  12.  
  13. $habisDibagi2 = $i % 2 === 0;
  14. $habisDibagi3 = $i % 3 === 0;
  15. $habisDibagi5 = $i % 5 === 0;
  16.  
  17. // Cek kombinasi terbesar dulu (urutan penting!)
  18. if ($habisDibagi2 && $habisDibagi3 && $habisDibagi5) {
  19. $output = "TekaTekiTeko";
  20. } elseif ($habisDibagi2 && $habisDibagi3) {
  21. $output = "TekaTeki";
  22. } elseif ($habisDibagi2 && $habisDibagi5) {
  23. $output = "TekaTeko";
  24. } elseif ($habisDibagi3 && $habisDibagi5) {
  25. $output = "TekiTeko";
  26. } elseif ($habisDibagi2) {
  27. $output = "Teka";
  28. } elseif ($habisDibagi3) {
  29. $output = "Teki";
  30. } elseif ($habisDibagi5) {
  31. $output = "Teko";
  32. } else {
  33. $output = (string)$i;
  34. }
  35.  
  36. echo $output . PHP_EOL;
  37. }
  38. }
Success #stdin #stdout 0.03s 25848KB
stdin
Standard input is empty
stdout
Standard output is empty