Hi an alle.
Bezüglich Rekursion:
Diese absolut simple rekursive Funktion macht mir jedoch Kopfzerbrechen, was die Verständlichkeit angeht:
<?php
function fak($n)
{
//Aufruf
echo "Eintritt mit $n<br>";
if ($n == 0)
{
return 1;
}
else
{
//echo "<br><br>";
$ergebnis = $n*fak($n-1);
//Rückspring
echo "Austritt mit $n: $ergebnis<br>";
return $ergebnis;
}
}
fak(5)
?>
Das Ergebnis dieser Funktion ist folgendes:
Eintritt mit 5
Eintritt mit 4
Eintritt mit 3
Eintritt mit 2
Eintritt mit 1
Eintritt mit 0
Austritt mit 1: 1
Austritt mit 2: 2
Austritt mit 3: 6
Austritt mit 4: 24
Austritt mit 5: 120
Das mit dem "Einttritt" ist mir ja schon klar, da wird von 5 => 0 heruntergezählt, was durch den Teil
$ergebnis = $n*fak($n-1);
geschieht.
Kann mir aber jemand bitte erklären, WO GENAU diese Funktion anfängt hoch zu zählen??
Was veranlasst diese Funktion nach "Eintritt mit 0", mit "Austritt mit 1" bis "Austritt mit 5" HOCH zu zählen?
Währe für jede hilfreiche Erklärung sehr dankbar :)