TP 13 exo1: Implement all the required features.
[TD_C.git] / TP_13 / exo1 / src / main.c
index 06f5f8d66140d669cb3a97bedd47405c4593e2f5..e7472189288080d542fbfb709d6a3f01a8eab848 100644 (file)
@@ -1,7 +1,46 @@
+#include <stdlib.h>
 #include <stdio.h>
 
+#include "array.h"
+#include "utils.h"
+#include "io.h"
+
 int main() {
-    printf("Hello world\n");
+    int* tab = NULL;
+    unsigned tab_size = 0;
+    int errno = 0;
+    int choice = 0;
+
+    printf("=== Saisie initiale ===\n\n");
+    tab = prompt_array(tab, &tab_size);
+
+    do {
+        display_choice_menu();
+        errno = prompt_value("Choix?", &choice);
+        handle_prompt_error(errno);
+        if (1 > choice || 5 < choice) {
+            printf("\nFaire un choix compris entre 1 et 5\n");
+            continue;
+        }
+        switch (choice) {
+            case 1:
+                tab = do_concat(tab, &tab_size);
+                break;
+            case 2:
+                do_sort(tab, tab_size);
+                break;
+            case 3:
+                display_array(tab, tab_size);
+                break;
+            case 4:
+                do_count(tab, tab_size);
+                break;
+            default:
+                /* do nothing, unused code path */
+                break;
+        }
+    } while (choice != 5);
 
-    return 0;
+    free_tab(tab);
+    exit(EXIT_SUCCESS);
 }