<?php
function tekaTekiTeko(int $batas): void {
// Validasi: unsigned integer dan minimal 20
if (!is_int($batas) || $batas < 0 || $batas < 20) { throw new InvalidArgumentException("Parameter harus berupa unsigned integer dan minimal 20.");
}
// Cetak pemanggilan fungsi dan keterangan output
echo "tekaTekiTeko($batas);\n";
echo "// Hasil yang tercetak pada layar adalah sebagai berikut:\n";
// Perulangan dan pengecekan kondisi
for ($i = 1; $i <= $batas; $i++) {
if ($i % 2 === 0 && $i % 3 === 0 && $i % 5 === 0) {
echo "TekaTekiTeko\n";
} elseif ($i % 2 === 0 && $i % 3 === 0) {
echo "TekaTeki\n";
} elseif ($i % 2 === 0 && $i % 5 === 0) {
echo "TekaTeko\n";
} elseif ($i % 3 === 0 && $i % 5 === 0) {
echo "TekiTeko\n";
} elseif ($i % 2 === 0) {
echo "Teka\n";
} elseif ($i % 3 === 0) {
echo "Teki\n";
} elseif ($i % 5 === 0) {
echo "Teko\n";
} else {
echo "$i\n";
}
}
}
// Contoh pemanggilan fungsi
try {
tekaTekiTeko(30); // Ganti nilai jika ingin batas lain (minimal 20)
} catch (Exception $e) {
echo "Error: " . $e->getMessage();
}