function Faktorial($n) { for($i=1; $n>0; $n--) $i *= $n; return $i; } function Prohod(&$x,&$y) { $pom = $x; $x = $y; $y = $pom; } function NSD($x,$y) { do { $zb = $x % $y; $x = $y; $y = $zb; } while ($zb>0); return $x; } function Umocni($zaklad, $exponent=2) { $pom = $zaklad; for ($i=1; $i<$exponent; $i++) $pom *= $zaklad; return $pom; } function Citac() { static $n=0; $n++; return $n; } ?>
Parametry funkcí jsou volané hodnotou ... function F($p) nebo odkazem ... function F(&$p)
$a=12; $b="ahoj";
echo "\$a=$a \$b=$b
";
echo "Volam funkci Prohod()
";
Prohod($a,$b);
echo "\$a=$a \$b=$b
"; $a=714; $b=462; $c=NSD($a,$b); echo "Největší společný dělitel čísel $a a $b je $c
";
echo "Umocňuji 5 na 3. ... ".Umocni(5,3)."
";
echo "Umocňuji 5 na ?. ... ".Umocni(5)." (přednastavena hodnota 2)
";
echo "Test statické proměnné ve funkci Citac()
";
echo "Volam funkci poprve .... ".Citac()."
";
echo "Volam funkci podruhe ... ".Citac()."
";
echo "Volam funkci potreti ... ".Citac()."
"; ?>
Tabulka faktoriálů
for ($k=1; $k<=8; $k++) printf("$k! = %6d \n",Faktorial($k)); // typ double umožní vypočítat 170! ?>