Der Turm von Hanoi ist ein Mathe-Rätsel. Es besteht aus drei Stangen und mehreren Scheiben unterschiedlicher Größe, die auf jede der Stangen geschoben werden können. Das Rätsel beginnt mit ordentlich auf einer Stange gestapelten Scheiben in aufsteigender Größenordnung, wobei die kleinste Scheibe oben liegt. Wir müssen denselben Stapel auf die dritte Stange verschieben.
Das Ziel des Puzzles besteht darin, den gesamten Stapel auf eine andere Stange zu verschieben und dabei die folgenden einfachen Regeln zu befolgen: −
Es kann jeweils nur eine Scheibe verschoben werden.
Jeder Zug besteht darin, die obere Scheibe von einem Stapel zu nehmen und auf einen anderen Stapel zu legen, d. h. die Scheibe kann nur bewegt werden, wenn sie oben auf einem Stapel liegt.
Eine Disc kann nicht auf eine kleinere Disc gelegt werden.
Eingabe − 3
Ausgabe − A nach B
A nach C
A nach B
B Erklärung – verwendet eine rekursive Funktion und löst den Turm von Hanoi.
Beispiel
#include<stdio.h> void TOH(int n,char x,char y,char z) { if(n>0) { TOH(n-1,x,z,y); printf("</p><p>%c to %c",x,y); TOH(n-1,z,y,x); } } int main() { int n=3; TOH(n,'A','B','C'); }
A to B A to C B to C A to B C to A C to B A to B
Das obige ist der detaillierte Inhalt vonTower of Hanoi-Programm, geschrieben in C-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!