[C/C++]ハノータの実現
720 ワード
/* 1 A A C
A n-1 C B, A A C
B n-1 A C*/
#include
void hannuota(int n, char A, char B, char C){
if (1 == n){ //
printf(" %d %c %c
", n, A, C);
}
else
{
hannuota(n-1, A, C, B); // , n-1 , A C B
printf(" %d %c %c
", n, A, C); // n A C
hannuota(n-1, B, A, C); // , B n-1 C 。
}
}
int main(){
char ch1 = 'A';
char ch2 = 'B';
char ch3 = 'C';
int n;
printf(" : ");
scanf("%d", &n);
hannuota(n, 'A', 'B', 'C');
return 0;
}