aboutsummaryrefslogtreecommitdiff
path: root/src/solve.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-06-28 09:40:47 +0200
committerCharles <sircharlesaze@gmail.com>2020-06-28 09:40:47 +0200
commit15e690e0dc9f539ca0e8e9c98c3fdc9105ec9d74 (patch)
treed60e39bdac9d2447b89e56dac88b8877b5005378 /src/solve.c
parentfeae9f442000cf218c249e6e163e8b5137771857 (diff)
downloadhanoi-15e690e0dc9f539ca0e8e9c98c3fdc9105ec9d74.tar.gz
hanoi-15e690e0dc9f539ca0e8e9c98c3fdc9105ec9d74.tar.bz2
hanoi-15e690e0dc9f539ca0e8e9c98c3fdc9105ec9d74.zip
Added solveHEADmaster
Diffstat (limited to 'src/solve.c')
-rw-r--r--src/solve.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/solve.c b/src/solve.c
new file mode 100644
index 0000000..d020dfd
--- /dev/null
+++ b/src/solve.c
@@ -0,0 +1,16 @@
+#include "hanoi.h"
+
+void solve(t_tower towers[3], WINDOW *wins[3],
+ int n, int from, int via, int to)
+{
+ if (n == 0)
+ return;
+ solve(towers, wins, n - 1, from, to, via);
+ towers_move(towers, from, to);
+
+ for (int i = 0; i < 3; i++)
+ tower_put(&towers[i], wins[i], HIGHLIGHT_NONE);
+ usleep(1000);
+
+ solve(towers, wins, n - 1, via, from, to);
+}