From 887d7e2654f8283e5583edf2c6aee0c003ce5b7b Mon Sep 17 00:00:00 2001 From: alexandre Date: Mon, 15 Apr 2024 23:01:16 +0200 Subject: [PATCH] added all args to main --- main.c | 22 ++-- output.csv | 286 ++++++++++++++++++++++++++-------------------------- structure.c | 15 +++ 3 files changed, 172 insertions(+), 151 deletions(-) diff --git a/main.c b/main.c index 618fd1f..09dac7d 100644 --- a/main.c +++ b/main.c @@ -3,29 +3,35 @@ #include "algorithm.c" // gcc -g -Wall -Wextra -Wpedantic main.c -lSDL2 -lSDL2_image -lm -o main +// ./main MP2I-creneaux.txt 33 MP2I-colleurs.txt 16 6 15 output.csv int main(int argc, char **argv) { - if (argc!=4) { - fprintf(stderr, "Usage: %s \n", argv[0]); + if (argc!=8) { + fprintf(stderr, "Usage: %s \n", argv[0]); exit(1); } char* path_creneaux = argv[1]; - char* path_colleurs = argv[2]; - char* path_output = argv[3]; + int n_creneaux = str_to_int(argv[2]); + char* path_colleurs = argv[3]; + int n_colleurs = str_to_int(argv[6]); + int n_weeks = str_to_int(argv[5]); + int n_groups = str_to_int(argv[6]); + char* path_output = argv[7]; + + printf("%d %d %d %d\n", n_creneaux, n_colleurs, n_weeks, n_groups); printf("Starting\n"); srand(time(NULL)); //creneau* edt = import_creneaux("file.txt", 76); - creneau* edt = import_creneaux_oneweek(path_creneaux, 33, 6); - int len_edt = 33*6; + creneau* edt = import_creneaux_oneweek(path_creneaux, n_creneaux, n_weeks); + int len_edt = n_creneaux*n_weeks; //colleur* dudes = import_colleurs("some_data.txt", 13, len_creneau); colleur* dudes = import_colleurs_oneweek(path_colleurs, 16, 6, 33); - int n_colleurs = 16; - aux_2(edt, len_edt, dudes, n_colleurs, 15, 6, 5000, path_output); + aux_2(edt, len_edt, dudes, n_colleurs, n_groups, n_weeks, 5000, path_output); for(int i = 0; i < len_edt; i++) { free(edt[i].name); diff --git a/output.csv b/output.csv index e330cfa..144a4e7 100644 --- a/output.csv +++ b/output.csv @@ -1,199 +1,199 @@ hour,day,month,year,length,group,colleur,matiere -12,5,2,2024,1,10,Chevalier,Physique -13,5,2,2024,1,3,Herbaut,Anglais -14,6,2,2024,1,6,Mullaert,Maths -14,6,2,2024,1,11,Belaggoune,Anglais -14,6,2,2024,1,12,Chevalier,Physique -17,6,2,2024,1,14,Chevalier,Physique -17,6,2,2024,1,4,Colin,Physique -18,6,2,2024,1,10,Rapin,Maths -13,7,2,2024,1,11,Carpintero,Maths -14,7,2,2024,1,5,Le_Gouriellec,Anglais -14,7,2,2024,1,12,Boully,Maths -14,7,2,2024,1,4,Carpintero,Maths -14,7,2,2024,1,3,Bouverot,Maths +12,5,2,2024,1,2,Chevalier,Physique +13,5,2,2024,1,15,Herbaut,Anglais +14,6,2,2024,1,6,Chevalier,Physique +14,6,2,2024,1,1,Belaggoune,Anglais +14,6,2,2024,1,2,Mullaert,Maths +17,6,2,2024,1,8,Chevalier,Physique +17,6,2,2024,1,10,Colin,Physique +18,6,2,2024,1,11,Rapin,Maths +13,7,2,2024,1,14,Carpintero,Maths +14,7,2,2024,1,7,Le_Gouriellec,Anglais +14,7,2,2024,1,15,Boully,Maths +14,7,2,2024,1,3,Carpintero,Maths +14,7,2,2024,1,6,Bouverot,Maths 14,7,2,2024,2,0,none,_ 14,7,2,2024,2,0,none,_ 14,7,2,2024,2,0,none,_ -15,7,2,2024,1,1,Le_Gouriellec,Anglais -15,7,2,2024,1,14,Boully,Maths -15,7,2,2024,1,0,none,_ -16,7,2,2024,1,7,Mann,Anglais +15,7,2,2024,1,3,Le_Gouriellec,Anglais +15,7,2,2024,1,4,Boully,Maths +15,7,2,2024,1,12,Bouverot,Maths +16,7,2,2024,1,5,Mann,Anglais 16,7,2,2024,2,0,none,_ 16,7,2,2024,2,0,none,_ 16,7,2,2024,2,0,none,_ -17,7,2,2024,1,2,Poupy,Physique -17,7,2,2024,1,9,Mann,Anglais -18,7,2,2024,1,6,Poupy,Physique -14,8,2,2024,1,13,Belaggoune,Anglais -15,8,2,2024,1,0,none,_ -18,8,2,2024,1,2,Rapin,Maths +17,7,2,2024,1,11,Mann,Anglais +17,7,2,2024,1,12,Poupy,Physique +18,7,2,2024,1,14,Poupy,Physique +14,8,2,2024,1,9,Belaggoune,Anglais +15,8,2,2024,1,13,Belaggoune,Anglais +18,8,2,2024,1,7,Rapin,Maths 18,8,2,2024,1,0,none,_ -16,9,2,2024,1,8,Chibani,Physique -17,9,2,2024,1,7,Oubaha,Maths -18,9,2,2024,1,8,Oubaha,Maths -12,12,2,2024,1,7,Chevalier,Physique -13,12,2,2024,1,2,Herbaut,Anglais +16,9,2,2024,1,4,Chibani,Physique +17,9,2,2024,1,8,Oubaha,Maths +18,9,2,2024,1,10,Oubaha,Maths +12,12,2,2024,1,3,Chevalier,Physique +13,12,2,2024,1,6,Herbaut,Anglais 14,13,2,2024,1,5,Mullaert,Maths -14,13,2,2024,1,9,Chevalier,Physique -14,13,2,2024,1,10,Belaggoune,Anglais -17,13,2,2024,1,11,Chevalier,Physique -17,13,2,2024,1,13,Colin,Physique -18,13,2,2024,1,7,Rapin,Maths -13,14,2,2024,1,12,Carpintero,Maths -14,14,2,2024,1,13,Bouverot,Maths -14,14,2,2024,1,8,Carpintero,Maths -14,14,2,2024,1,0,none,_ -14,14,2,2024,1,4,Le_Gouriellec,Anglais +14,13,2,2024,1,5,Chevalier,Physique +14,13,2,2024,1,12,Belaggoune,Anglais +17,13,2,2024,1,7,Colin,Physique +17,13,2,2024,1,13,Chevalier,Physique +18,13,2,2024,1,1,Rapin,Maths +13,14,2,2024,1,7,Carpintero,Maths +14,14,2,2024,1,2,Le_Gouriellec,Anglais +14,14,2,2024,1,8,Bouverot,Maths +14,14,2,2024,1,11,Carpintero,Maths +14,14,2,2024,1,12,Boully,Maths 14,14,2,2024,2,0,none,_ 14,14,2,2024,2,0,none,_ 14,14,2,2024,2,0,none,_ -15,14,2,2024,1,11,Bouverot,Maths -15,14,2,2024,1,9,Boully,Maths -15,14,2,2024,1,12,Le_Gouriellec,Anglais -16,14,2,2024,1,0,none,_ +15,14,2,2024,1,4,Le_Gouriellec,Anglais +15,14,2,2024,1,13,Bouverot,Maths +15,14,2,2024,1,15,Boully,Maths +16,14,2,2024,1,8,Mann,Anglais 16,14,2,2024,2,0,none,_ 16,14,2,2024,2,0,none,_ 16,14,2,2024,2,0,none,_ 17,14,2,2024,1,1,Poupy,Physique -17,14,2,2024,1,6,Mann,Anglais -18,14,2,2024,1,3,Poupy,Physique -14,15,2,2024,1,8,Belaggoune,Anglais -15,15,2,2024,1,14,Belaggoune,Anglais -18,15,2,2024,1,1,Rapin,Maths +17,14,2,2024,1,10,Mann,Anglais +18,14,2,2024,1,9,Poupy,Physique +14,15,2,2024,1,14,Belaggoune,Anglais +15,15,2,2024,1,0,none,_ +18,15,2,2024,1,4,Rapin,Maths 18,15,2,2024,1,0,none,_ -16,16,2,2024,1,5,Chibani,Physique -17,16,2,2024,1,3,Oubaha,Maths -18,16,2,2024,1,4,Oubaha,Maths -12,19,2,2024,1,12,Chevalier,Physique -13,19,2,2024,1,1,Herbaut,Anglais -14,20,2,2024,1,7,Belaggoune,Anglais -14,20,2,2024,1,6,Chevalier,Physique -14,20,2,2024,1,9,Mullaert,Maths -17,20,2,2024,1,10,Colin,Physique -17,20,2,2024,1,14,Chevalier,Physique +16,16,2,2024,1,11,Chibani,Physique +17,16,2,2024,1,9,Oubaha,Maths +18,16,2,2024,1,3,Oubaha,Maths +12,19,2,2024,1,10,Chevalier,Physique +13,19,2,2024,1,13,Herbaut,Anglais +14,20,2,2024,1,15,Belaggoune,Anglais +14,20,2,2024,1,4,Chevalier,Physique +14,20,2,2024,1,2,Mullaert,Maths +17,20,2,2024,1,12,Chevalier,Physique +17,20,2,2024,1,14,Colin,Physique 18,20,2,2024,1,5,Rapin,Maths -13,21,2,2024,1,6,Carpintero,Maths -14,21,2,2024,1,10,Bouverot,Maths -14,21,2,2024,1,14,Boully,Maths -14,21,2,2024,1,5,Le_Gouriellec,Anglais -14,21,2,2024,1,8,Carpintero,Maths +13,21,2,2024,1,8,Carpintero,Maths +14,21,2,2024,1,9,Bouverot,Maths +14,21,2,2024,1,6,Boully,Maths +14,21,2,2024,1,13,Carpintero,Maths +14,21,2,2024,1,1,Le_Gouriellec,Anglais 14,21,2,2024,2,0,none,_ 14,21,2,2024,2,0,none,_ 14,21,2,2024,2,0,none,_ -15,21,2,2024,1,1,Bouverot,Maths -15,21,2,2024,1,2,Boully,Maths -15,21,2,2024,1,9,Le_Gouriellec,Anglais -16,21,2,2024,1,11,Mann,Anglais +15,21,2,2024,1,3,Le_Gouriellec,Anglais +15,21,2,2024,1,10,Boully,Maths +15,21,2,2024,1,14,Bouverot,Maths +16,21,2,2024,1,5,Mann,Anglais 16,21,2,2024,2,0,none,_ 16,21,2,2024,2,0,none,_ 16,21,2,2024,2,0,none,_ -17,21,2,2024,1,4,Poupy,Physique -17,21,2,2024,1,13,Mann,Anglais -18,21,2,2024,1,8,Poupy,Physique -14,22,2,2024,1,0,none,_ -15,22,2,2024,1,3,Belaggoune,Anglais -18,22,2,2024,1,4,Rapin,Maths +17,21,2,2024,1,2,Poupy,Physique +17,21,2,2024,1,9,Mann,Anglais +18,21,2,2024,1,6,Poupy,Physique +14,22,2,2024,1,7,Belaggoune,Anglais +15,22,2,2024,1,11,Belaggoune,Anglais +18,22,2,2024,1,1,Rapin,Maths 18,22,2,2024,1,0,none,_ -16,23,2,2024,1,2,Chibani,Physique -17,23,2,2024,1,12,Oubaha,Maths -18,23,2,2024,1,13,Oubaha,Maths -12,26,2,2024,1,7,Chevalier,Physique -13,26,2,2024,1,6,Herbaut,Anglais -14,27,2,2024,1,1,Mullaert,Maths -14,27,2,2024,1,9,Chevalier,Physique -14,27,2,2024,1,0,none,_ -17,27,2,2024,1,11,Colin,Physique -17,27,2,2024,1,13,Chevalier,Physique -18,27,2,2024,1,6,Rapin,Maths -13,28,2,2024,1,3,Carpintero,Maths -14,28,2,2024,1,2,Le_Gouriellec,Anglais -14,28,2,2024,1,7,Bouverot,Maths -14,28,2,2024,1,9,Carpintero,Maths -14,28,2,2024,1,11,Boully,Maths +16,23,2,2024,1,8,Chibani,Physique +17,23,2,2024,1,4,Oubaha,Maths +18,23,2,2024,1,12,Oubaha,Maths +12,26,2,2024,1,3,Chevalier,Physique +13,26,2,2024,1,14,Herbaut,Anglais +14,27,2,2024,1,5,Chevalier,Physique +14,27,2,2024,1,6,Mullaert,Maths +14,27,2,2024,1,10,Belaggoune,Anglais +17,27,2,2024,1,11,Chevalier,Physique +17,27,2,2024,1,13,Colin,Physique +18,27,2,2024,1,7,Rapin,Maths +13,28,2,2024,1,9,Carpintero,Maths +14,28,2,2024,1,10,Bouverot,Maths +14,28,2,2024,1,11,Carpintero,Maths +14,28,2,2024,1,13,Boully,Maths +14,28,2,2024,1,0,none,_ 14,28,2,2024,2,0,none,_ 14,28,2,2024,2,0,none,_ 14,28,2,2024,2,0,none,_ +15,28,2,2024,1,5,Boully,Maths 15,28,2,2024,1,4,Le_Gouriellec,Anglais -15,28,2,2024,1,13,Boully,Maths 15,28,2,2024,1,14,Bouverot,Maths -16,28,2,2024,1,8,Mann,Anglais +16,28,2,2024,1,6,Mann,Anglais 16,28,2,2024,2,0,none,_ 16,28,2,2024,2,0,none,_ 16,28,2,2024,2,0,none,_ -17,28,2,2024,1,1,Poupy,Physique -17,28,2,2024,1,10,Mann,Anglais -18,28,2,2024,1,3,Poupy,Physique -14,29,2,2024,1,12,Belaggoune,Anglais -15,29,2,2024,1,14,Belaggoune,Anglais -18,29,2,2024,1,5,Rapin,Maths +17,28,2,2024,1,7,Poupy,Physique +17,28,2,2024,1,8,Mann,Anglais +18,28,2,2024,1,9,Poupy,Physique +14,29,2,2024,1,2,Belaggoune,Anglais +15,29,2,2024,1,12,Belaggoune,Anglais +18,29,2,2024,1,1,Rapin,Maths 18,29,2,2024,1,0,none,_ -16,1,3,2024,1,5,Chibani,Physique +16,1,3,2024,1,1,Chibani,Physique 17,1,3,2024,1,2,Oubaha,Maths -18,1,3,2024,1,10,Oubaha,Maths +18,1,3,2024,1,3,Oubaha,Maths 12,4,3,2024,1,8,Chevalier,Physique -13,4,3,2024,1,11,Herbaut,Anglais -14,5,3,2024,1,7,Belaggoune,Anglais -14,5,3,2024,1,10,Mullaert,Maths -14,5,3,2024,1,12,Chevalier,Physique -17,5,3,2024,1,4,Chevalier,Physique -17,5,3,2024,1,14,Colin,Physique -18,5,3,2024,1,4,Rapin,Maths -13,6,3,2024,1,7,Carpintero,Maths -14,6,3,2024,1,14,Boully,Maths -14,6,3,2024,1,0,none,_ -14,6,3,2024,1,1,Le_Gouriellec,Anglais -14,6,3,2024,1,2,Carpintero,Maths +13,4,3,2024,1,1,Herbaut,Anglais +14,5,3,2024,1,6,Mullaert,Maths +14,5,3,2024,1,3,Belaggoune,Anglais +14,5,3,2024,1,10,Chevalier,Physique +17,5,3,2024,1,12,Colin,Physique +17,5,3,2024,1,14,Chevalier,Physique +18,5,3,2024,1,12,Rapin,Maths +13,6,3,2024,1,14,Carpintero,Maths +14,6,3,2024,1,2,Bouverot,Maths +14,6,3,2024,1,7,Le_Gouriellec,Anglais +14,6,3,2024,1,15,Boully,Maths +14,6,3,2024,1,3,Carpintero,Maths 14,6,3,2024,2,0,none,_ 14,6,3,2024,2,0,none,_ 14,6,3,2024,2,0,none,_ -15,6,3,2024,1,3,Le_Gouriellec,Anglais -15,6,3,2024,1,8,Bouverot,Maths -15,6,3,2024,1,11,Boully,Maths -16,6,3,2024,1,9,Mann,Anglais +15,6,3,2024,1,8,Boully,Maths +15,6,3,2024,1,5,Le_Gouriellec,Anglais +15,6,3,2024,1,10,Bouverot,Maths +16,6,3,2024,1,11,Mann,Anglais 16,6,3,2024,2,0,none,_ 16,6,3,2024,2,0,none,_ 16,6,3,2024,2,0,none,_ -17,6,3,2024,1,5,Mann,Anglais -17,6,3,2024,1,6,Poupy,Physique -18,6,3,2024,1,10,Poupy,Physique +17,6,3,2024,1,4,Poupy,Physique +17,6,3,2024,1,9,Mann,Anglais +18,6,3,2024,1,2,Poupy,Physique 14,7,3,2024,1,13,Belaggoune,Anglais -15,7,3,2024,1,0,none,_ -18,7,3,2024,1,3,Rapin,Maths +15,7,3,2024,1,15,Belaggoune,Anglais +18,7,3,2024,1,4,Rapin,Maths 18,7,3,2024,1,0,none,_ -16,8,3,2024,1,2,Chibani,Physique -17,8,3,2024,1,6,Oubaha,Maths -18,8,3,2024,1,12,Oubaha,Maths -12,11,3,2024,1,11,Chevalier,Physique +16,8,3,2024,1,6,Chibani,Physique +17,8,3,2024,1,7,Oubaha,Maths +18,8,3,2024,1,11,Oubaha,Maths +12,11,3,2024,1,7,Chevalier,Physique 13,11,3,2024,1,14,Herbaut,Anglais -14,12,3,2024,1,8,Mullaert,Maths -14,12,3,2024,1,9,Chevalier,Physique 14,12,3,2024,1,0,none,_ +14,12,3,2024,1,8,Mullaert,Maths +14,12,3,2024,1,11,Chevalier,Physique +17,12,3,2024,1,9,Chevalier,Physique 17,12,3,2024,1,13,Colin,Physique -17,12,3,2024,1,7,Chevalier,Physique -18,12,3,2024,1,1,Rapin,Maths -13,13,3,2024,1,5,Carpintero,Maths -14,13,3,2024,1,2,Le_Gouriellec,Anglais -14,13,3,2024,1,4,Boully,Maths -14,13,3,2024,1,9,Carpintero,Maths -14,13,3,2024,1,11,Bouverot,Maths +18,12,3,2024,1,3,Rapin,Maths +13,13,3,2024,1,9,Carpintero,Maths +14,13,3,2024,1,4,Le_Gouriellec,Anglais +14,13,3,2024,1,12,Bouverot,Maths +14,13,3,2024,1,13,Carpintero,Maths +14,13,3,2024,1,15,Boully,Maths 14,13,3,2024,2,0,none,_ 14,13,3,2024,2,0,none,_ 14,13,3,2024,2,0,none,_ -15,13,3,2024,1,3,Bouverot,Maths -15,13,3,2024,1,12,Boully,Maths -15,13,3,2024,1,6,Le_Gouriellec,Anglais -16,13,3,2024,1,8,Mann,Anglais +15,13,3,2024,1,2,Le_Gouriellec,Anglais +15,13,3,2024,1,11,Boully,Maths +15,13,3,2024,1,4,Bouverot,Maths +16,13,3,2024,1,6,Mann,Anglais 16,13,3,2024,2,0,none,_ 16,13,3,2024,2,0,none,_ 16,13,3,2024,2,0,none,_ -17,13,3,2024,1,1,Poupy,Physique -17,13,3,2024,1,10,Mann,Anglais -18,13,3,2024,1,3,Poupy,Physique -14,14,3,2024,1,4,Belaggoune,Anglais +17,13,3,2024,1,3,Poupy,Physique +17,13,3,2024,1,8,Mann,Anglais +18,13,3,2024,1,1,Poupy,Physique +14,14,3,2024,1,10,Belaggoune,Anglais 15,14,3,2024,1,12,Belaggoune,Anglais -18,14,3,2024,1,7,Rapin,Maths +18,14,3,2024,1,5,Rapin,Maths 18,14,3,2024,1,0,none,_ 16,15,3,2024,1,5,Chibani,Physique -17,15,3,2024,1,13,Oubaha,Maths -18,15,3,2024,1,0,none,_ +17,15,3,2024,1,1,Oubaha,Maths +18,15,3,2024,1,7,Oubaha,Maths diff --git a/structure.c b/structure.c index 788994f..1bf2b55 100644 --- a/structure.c +++ b/structure.c @@ -468,4 +468,19 @@ colleur* import_colleurs_oneweek(char* filename, int n_colleurs, int n_weeks, in printf("Imported colleurs with no problems\n"); return res; +} + +int str_to_int(char* s) { + char c = 'e'; + int i = 0; + int buffer = 0; + while(c != '\0') { + c = s[i]; + buffer *= 10; + if((int)(c) >= 48 && (int)(c) <= 57) { + buffer += (int)(c)-48; + } + i++; + } + return buffer/10; } \ No newline at end of file