#include<stdio.h>
#include<conio.h>
void TOH(int n,char x,char y,char z);
void main()
{
int n;
printf("\n Enter number of plates:");
scanf("%d",&n);
TOH(n-1,'A','B','C');
getch();
}
void TOH(int n,char x,char y,char z)
{
if(n>0)
{
TOH(n-1,x,z,y);
printf("\n%c -> %c",x,y);
TOH(n-1,z,y,x);
}
}


1 Comment:
I guess there are few mistakes in the code:
The output for 3 plates should be:
A -> C
A -> B
C -> B
A -> C
B -> A
B -> C
A -> C
==============
The correct code is:
#include
#include
void TOH(int n,char x,char y,char z);
void main()
{
int n;
printf("\n Enter number of plates:");
scanf("%d",&n);
TOH(n,'A','B','C'); //instead of n-1
getch();
}
void TOH(int n,char x,char y,char z)
{
if(n>0)
{
TOH(n-1,x,z,y);
printf("\n%c -> %c",x,z); //instead of x,y
TOH(n-1,y,x,z); //instead of z,y,x
}
}
Post a Comment
Your Feedback :This is Growing Site and Your Feedback is important for Us to improve the Site performance & Quality of Content.Feel Free to contact and Please Provide Name & Contact Email