2c81a631b28d3abb19c28c4eb6bf4d0ce3e0bd7f
[TD_C.git] / TP_13 / exo1 / src / main.c
1 #include <stdlib.h>
2 #include <stdio.h>
3
4 #include "array.h"
5 #include "utils.h"
6 #include "io.h"
7
8 int main() {
9 int* tab = NULL;
10 unsigned tab_size = 0;
11 int errno = 0;
12 int choice = 0;
13
14 printf("=== Saisie initiale ===\n\n");
15 tab = prompt_array(tab, &tab_size);
16
17 do {
18 display_choice_menu();
19 errno = prompt_value("Choix?", &choice);
20 handle_prompt_error(errno);
21 if (1 > choice || 7 < choice) {
22 printf("\nFaire un choix compris entre 1 et 7\n");
23 continue;
24 }
25 switch (choice) {
26 case 1:
27 tab = do_concat(tab, &tab_size);
28 break;
29 case 2:
30 do_sort(tab, tab_size);
31 break;
32 case 3:
33 display_array(tab, tab_size);
34 break;
35 case 4:
36 do_count(tab, tab_size);
37 break;
38 case 5:
39 printf("\nLe nombre d'entiers pairs dans le tableau est %d\n", count_tab_criteria(tab, tab_size, is_even));
40 break;
41 case 6:
42 printf("\nLe nombre d'entiers impairs dans le tableau est %d\n", count_tab_criteria(tab, tab_size, is_odd));
43 break;
44 default:
45 /* do nothing, unused code path */
46 break;
47 }
48 } while (choice != 7);
49
50 free_tab(tab);
51 exit(EXIT_SUCCESS);
52 }