#include void move(int n, int a, int b) { printf("ディスク%dを棒%dから棒%dへ\n", n, a, b); } /* n枚のディスクをaからbに移動する手順 */ void hanoi(int n, int a, int b, int c) { if (n > 0) { hanoi(n - 1, a, c, b); move(n, a, b); hanoi(n - 1, c, b, a); } } int main(void) { int n; printf("円盤は何枚ですか? "); scanf("%d", &n); hanoi(n, 1, 2, 3); return 0; }