#include int hanoi(int disks, char a, char b, char c); int main(void) { int disks; char a = 'A', b='C', c='B'; printf("何枚のディスクを動かしますか?:"); scanf("%d", &disks); while (disks > 65 || disks < 0 ) { printf("1 から 64 までの数字で指定してください :"); scanf("%d", &disks); } hanoi(disks, a, b, c); return 0; } int hanoi(int disks, char a, char b, char c) { if (disks == 1) { printf("ディスク 1 を %c から %c に動かせ\n", a, b); } else { hanoi(disks - 1, a, c, b); printf("ディスク %d を %c から %c に動かせ\n", disks, a, b); hanoi(disks - 1, c, b, a); } return 0; }