Ich bin immer noch ein relativ neuer Programmierer, der versucht Rekursion zu verstehen. Ich habe über verschiedene Online-Tutorials nachgesehen, wie sie funktionieren und sie lassen es leicht verständlich erscheinen. Aber als ich auf diese Frage gestoßen bin, habe ich Probleme, zu versuchen, dem Programm zu folgen.Probleme beim Verständnis rekursiver Funktionen
#include <stdlib.h>
#include <stdio.h>
void hanoi(int n);
int main (int argc, char *argv[]) {
hanoi(2);
}
void hanoi(int n) {
printf("\n\n--------!n-------: %d\n\n", n);
if (n > 0) {
hanoi (n - 1);
printf("\n\n--------#n---------: %d\n\n", n);
hanoi (n - 1);
printf("\n\n-------$n---------: %d\n\n", n);
}
}
Ausgang
!n: 2
!n: 1
!n: 0
#n: 1
!n: 0
$n: 1
#n: 2
!n: 1
!n: 0
#n: 1
!n: 0
$n: 1
$n: 2
So, dass ich hoffte, dass jemand durch dieses Programm Schritt könnte und mir helfen, zu verstehen, wie Rekursion funktioniert wirklich.
Edit: -Sorry über die Fotos-
Bitte bearbeiten Sie Ihre Frage und verwenden Sie keine Bilder für Codes. Füge Deine Codes zu Frage –
ein Code nicht als Bilder posten. Erstellen Sie stattdessen eine Video-Komplettlösung und laden Sie sie auf Youtube hoch. Oh nein, warte. –