/** *@file : sae.c *@author : Erwan.M *@date : 07/11/22 * sujet : SAE 1.01 *@brief : Résumé : Fichier .c regroupant les fonctions du programme */ #include "SAE2.h" #include #include #include void menuPrincipal(void){ int choix; while(choix != 9){ printf("-------------------------------\n"); printf("\033[1;37m"); // Gras printf("\tMENU PRINCIPAL\t\n"); printf("\033[0m"); // Reset couleur printf("-------------------------------\n\n"); printf("(1) Utilisateur\n"); printf("(2) Administrateur\n"); printf("(9) Quitter\n"); choix = fonctionChoix(); switch (choix){ case 1: sousMenuUtilisateur(); break; case 2: printf("\e[1;1H\e[2J"); // Clear terminal sousMenuAdministrateur(); // Sous Menu Administrateur break; case 9: printf("Programme réalisé par Corentin LEMAIRE et Erwan MENAGER.\n"); exit(1); default: printf("\e[1;1H\e[2J"); // Clear terminal printf("-------------------------------\n"); printf("\033[1;31m"); // Rouge printf("Erreur : Saisie incorrecte.\n\a"); // \a -> Cloche printf("\033[0m"); // Reset couleur printf("-------------------------------\n"); } } } void sousMenuAdministrateur(void){ int choix; char motDePasseAdmin[20]; printf("Mot de passe administrateur : "); scanf("%*c"); fgets(motDePasseAdmin, 20, stdin); motDePasseAdmin[strlen(motDePasseAdmin)-1] = '\0'; if(strcmp("M.Hasbani>", motDePasseAdmin) != 0){ printf("\e[1;1H\e[2J"); // Clear terminal printf("---------------------------------------------------\n"); printf("\033[1;31m"); // Rouge printf("Mot de passe incorrect. "); printf("\033[0m"); // Reset couleur printf("Retour au menu principal.\n\a"); // \a -> Cloche printf("---------------------------------------------------\n"); return; } printf("\e[1;1H\e[2J"); // Clear terminal while(choix != 9){ printf("-------------------------------\n"); printf("\033[1;37m"); // Gras printf("\tMENU ADMINISTRATEUR\t\n"); printf("\033[0m"); // Reset couleur printf("-------------------------------\n\n"); printf("(1) Modifier le nombre de places dans un département\n"); printf("(2) Créer un département dans un IUT\n"); printf("(3) Supprimer un département d'un IUT\n"); printf("(4) Lancer et arrêter la phase de candidature (PARTIE 2)\n"); printf("(5) Modifier le nom du responsable d'un département\n"); printf("(9) Retour\n"); choix = fonctionChoix(); switch (choix){ case 1: printf("Modifier place\n"); // break; case 2: printf("Créer\n"); // break; case 3: printf("Supprimer\n"); // break; case 4: printf("Lancer\n"); // break; case 5: printf("Modifier nom\n"); // break; case 9: printf("\e[1;1H\e[2J"); // Clear terminal return; default: printf("\e[1;1H\e[2J"); // Clear terminal printf("-------------------------------\n"); printf("\033[1;31m"); // Rouge printf("Erreur : Saisie incorrecte.\n\a"); // \a -> Cloche printf("\033[0m"); // Reset couleur printf("-------------------------------\n"); } } } int fonctionChoix(void){ int choix; printf("\nVotre choix : "); scanf("%d", &choix); return choix; } void affichageSousMenuUtilisateur(void){ printf("-------------------------------\n"); printf("\033[1;37m"); // Gras printf("\tMENU UTILISATEUR\t\n"); printf("\033[0m"); // Reset couleur printf("-------------------------------\n\n"); printf("(1) Voir les villes où il y a un IUT\n"); printf("(2) Voir les département d'un IUT\n"); printf("(3) Voir le nombre de places en première année d'un département d'un IUT\n"); printf("(4) Voir les IUT possédant un département en particulier\n"); printf("(9) Retour\n"); } void switchUtilisateur(int choix){ switch (choix){ case 1: printf("Villes avec IUT\n"); // break; case 2: printf("Départements d'un IUT\n"); // break; case 3: printf("Nombre de places d'un IUT\n"); // break; case 4: printf("IUT avec département en particulier\n"); // break; case 9: printf("\e[1;1H\e[2J"); // Clear terminal return; default: printf("\e[1;1H\e[2J"); // Clear terminal printf("-------------------------------\n"); printf("\033[1;31m"); // Rouge printf("Erreur : Saisie incorrecte.\n\a"); // \a -> Cloche printf("\033[0m"); // Reset couleur printf("-------------------------------\n"); } } void sousMenuUtilisateur(void){ int choix; while (choix != 9){ affichageSousMenuUtilisateur(); choix = fonctionChoix(); switchUtilisateur(choix); } } ListeDept Listenouv(void){ ListeDept l; l = NULL; return l; } ListeDept inserer(ListeDept l, char* departement, int nbP, char* nomResp){ if (l == NULL) return insererEnTete(l, departement, nbP, nomResp); if (strcmp(departement, l -> departement) < 0) return insererEnTete(l, departement, nbP, nomResp); if (strcmp(departement, l -> departement) == 0) return l; l -> suiv = inserer(l->suiv, departement, nbP, nomResp); return l; } ListeDept insererEnTete(ListeDept l, char* departement, int nbP, char* nomResp){ MaillonDept *m; m = (MaillonDept *)malloc(sizeof(MaillonDept)); if (m == NULL) { printf("Problème malloc\n"); exit(1); } *m -> departement = departement; m -> nbP = nbP; *m -> nomResp = nomResp; m -> suiv = l; return m; } MaillonDept modifNbPlaces(MaillonDept m){ int nvNbPlaces; printf("Combien de places à présent ? "); scanf("%d", &nvNbPlaces); while (nvNbPlaces < 1){ printf("Nombre incorrect, réessayez !\n"); printf("Combien de places à présent ? "); scanf("%d", &nvNbPlaces); } m.nbP = nvNbPlaces; return m; } MaillonDept modifResp(MaillonDept m){ char nomResp[22]; printf("Nouveau nom de chef de département ? "); fgets(nomResp, 22, stdin); nomResp[strlen(nomResp) - 1 ] = '\0'; *m.nomResp = nomResp; return m; } /* EN COURS void rechercherVille(int* tiut, int tlog, int val, int *coderet, int *pos){ int i; for(i=0;ival){ *pos=i; return; } } *coderet=0; *pos=tlog; return; }*/