From cf292e1e276e283504f5a6391f59c08ab2ec19aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20A=2E=20Ortega=20Froysa?= Date: Mon, 17 Oct 2022 16:40:39 +0200 Subject: [PATCH] Add Hanoi C example. --- 2/SAD/hanoi.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 2/SAD/hanoi.c diff --git a/2/SAD/hanoi.c b/2/SAD/hanoi.c new file mode 100644 index 0000000..3e8168b --- /dev/null +++ b/2/SAD/hanoi.c @@ -0,0 +1,33 @@ +#include +#include + +void print_hanoi(int n) +{ + if(n == 2) + { + printf("1\n2\n1\n"); + } + else + { + print_hanoi(n-1); + printf("%d\n", n); + print_hanoi(n-1); + } +} + +int main(int argc, char *argv[]) +{ + if (argc != 2) + { + fprintf(stderr, "Give me a number!!!\n"); + return EXIT_FAILURE; + } + int n = atoi(argv[1]); + if (n < 2) + { + fprintf(stderr, "Number must be greater than 1!\n"); + return EXIT_FAILURE; + } + print_hanoi(n); + return EXIT_SUCCESS; +}