You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
197 lines
11 KiB
197 lines
11 KiB
PARTIE 1
|
|
|
|
Listdept initialisation(void);
|
|
VilleIUT lireVille(FILE *fe);
|
|
Listdept lireDept(FILE *fe, int nbIUT);
|
|
int chargeIUT(VilleIUT* tIUT[], int taillemax);
|
|
|
|
////////////////////////////////////
|
|
void affichageDep(Listdept d);
|
|
void affichageAllDep(Listdept d);
|
|
void affichageville(VilleIUT *tville[], int nbville);
|
|
void afficheVilleIUT(VilleIUT *tville[], int nbville);
|
|
void afficheDepartementsIUT(VilleIUT *tville[], int nbville);
|
|
void afficheDepNbPlace(VilleIUT *tville[], int nbville);
|
|
void afficheIUTdepParticulier(VilleIUT *tville[], int nbville);
|
|
|
|
Toutes ces fonctions d'affichage utilisent le tableau de pointeur tville et son nombre d'éléments.
|
|
/////////////////////////////////////
|
|
|
|
/////////////////////////////////////
|
|
int rechercheVille(VilleIUT *tville[], int nbville); La fonction retourne l'index de l'IUT cherché. -1 si pas trouvé
|
|
int chercheDepModif(Listdept d, char rechercheDep[31]); La fonction modifie directement le nombre de place avec le scanf si le département en paramètre est trouvé. Si cpt = 0, non trouvé.
|
|
void modifPlace(VilleIUT *tville[], int nbville); Cette fonction regroupe recherche ville et chercheDepModif
|
|
void modifNomResponsable(VilleIUT *tville[], int nbville);
|
|
//////////////////////////////////////
|
|
|
|
//////////////////////////////////////
|
|
Listdept ajoutDept(int posOptionnel, VilleIUT *tville[], int nbville); Si posOptionnel est à -1, cela veut dire que l'on ajoute un département à une ville existante, dans le cas contraire, on utilise ajoutDept dans la fonction ajoutIUT, afin d'y ajouter le premier département.
|
|
void ajoutIUT(VilleIUT *tIUT[], int *nbville, int taillemax);
|
|
Listdept suppressionDept(Listdept d, char rechercheDep[31]); Supprime un département, cette fonction est utilisée dans supprDepartement
|
|
void supprDepartement(VilleIUT *tville[], int* nbville); Demande la ville, puis le département à supprimer, et utilise la fonction suppressionDept.
|
|
//////////////////////////////////////
|
|
|
|
//////////////////////////////////////
|
|
void sauvegardeDep(Listdept d, FILE *fs); Cette fonction s'occupe d'écrire dans un fichier ce qui concerne les départements, elle est utilisée dans la fonction sauvegarde.
|
|
void sauvegarde(VilleIUT *tville[], int nbville); Sauvegarde une ville, puis utilise la fonction sauvegardeDep pour y inscrire son ou ses département(s).
|
|
//////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
PARTIE 3
|
|
///////////////////////////////////////
|
|
DepartementVille* recupererEtudiantsDepartementVille(listetuinfo* etudiants[], int nbEtudiants, char* ville, char* dep); Cette fonction récupère les informations contenues dans le tableau de pointeurs listetuinfo. On crée une structure DepartementVille pour y mettre le nom et le département qui sont en paramètres, dans le tableau. En parcourant le tableau listetuinfo, on récupère ceux qui ont faire le voeu de Clermont en informatique.
|
|
float calculerMoyenne(listetuinfo etudiant); On calcule la moyenne de chaque étudiants qui sont dans le tableau DepartementVille, on l'utilise lorsque longe charge les étudiants dans le tableau.
|
|
void trierDepartementVille(DepartementVille* departementVille, int nbElements); Cette fonction utilise le tri à bulle en fonction des moyennes des étudiants, elle le fait de manière décroissante.
|
|
void comparerEtudiants(DepartementVille* departementVille, listetuinfo* etudiants, int nbPlaces); Cette fonction prend en compte le nombre de place qu'il y a dans le département, et met la décision des étudiants à 1 aux meilleurs étudiants tant que le nombre de place est suffisant, quand il n'y a plus de place décision = 2, et si la moyenne est < à 10, on met -1
|
|
void afficherDepartementVille(DepartementVille* departementVille) Affiche tous les étudiants qui ont été séléctionnés, en affichant leur données et les décisions.
|
|
///////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Partie 2 mathéo thierry
|
|
|
|
/*
|
|
Dans cette patie j'ai utilisé un fichier text car il ne comporte pas beacoup de donnée,
|
|
nous permet de développer facilement et de pouvoir agir plus facilement si il y a des erreurs.
|
|
Mais dans la mesure ou le fichier est plus gros comme l'infrastructure uca par exemple il faudrait un fichier binaire pour plus de rapidité.
|
|
*/
|
|
|
|
// l'utilisation de tableau de pointeur et de liste en mémoire est plus pratique si les données s'accumules
|
|
|
|
// la recherche dicho est une recherche éfficace qui est pratique surtout pour un grand nombre de donnée
|
|
// comparé au recherche classique ou l'on passe tout le tableau pour trouver la donnée voulu
|
|
// dans le cadre de cette sae on peut remarquer l'utilisation de la recherche dicho pour les candidats et une recherche normal pour rechercher dans la liste de ville
|
|
|
|
// tableau de pointeur sur structure
|
|
listetuinfo *tetu[]
|
|
|
|
// structure qui pointe sur une liste
|
|
listetuinfo etu
|
|
|
|
// structure liste
|
|
Maillonchoix* carte
|
|
|
|
// tableau de pointeur sur structure
|
|
VilleIUT *tville[]
|
|
|
|
//tableau de pointeur sur structure
|
|
listetuinfo *tetutri[]
|
|
|
|
//focntions pour charger le tableau de donnée à l'aide d'un fichier candidature==============================================================================
|
|
//initialiser
|
|
Listchoixdept listvide(void)
|
|
|
|
//lire tout les cartes
|
|
Listchoixdept lireCarte(FILE *fe, int nbchoix)
|
|
|
|
//lire candidat
|
|
listetuinfo lireEtu(FILE *fe)
|
|
|
|
//boucle qui passe tout le fichier
|
|
int chargeretudiant(char nomFich[], listetuinfo *tetu[], int tmax)
|
|
|
|
//fonction de recherche dicho pour charcher un candidat à l'aide de son numéro================================================================================
|
|
int recherdicoetu(listetuinfo *tetu[], int nb, int num)
|
|
|
|
//fonctions pour enregistrer toutes les données des candidats et les candidature qui correspond===============================================================
|
|
//boucle pour les candidatures
|
|
void enregistrementcarte(FILE *fe, Maillonchoix* carte, int nb)
|
|
|
|
//candidat
|
|
void enregistrementinfo(FILE *fe, listetuinfo *etu)
|
|
|
|
//boucle qui passe tout le tableau de donnée
|
|
int enregistrementetudiants(char nomFich[], listetuinfo *tetu[], int nb)
|
|
|
|
//fonctions pour afficher tout les candidats et les cartes de candidature======================================================================================
|
|
//affichage des toutes les candidatures d'un candidat
|
|
void affichagecarte(Listchoixdept c)
|
|
|
|
//affichage d'un candidat
|
|
void affichageetu(listetuinfo a)
|
|
|
|
//boucle affichage de tout les candidats
|
|
void affichealletu(listetuinfo *tetu[], int nb)
|
|
|
|
//fonctions qui vérifie si le choix de département ce trouve dans les proposition d'une ville donnée===========================================================
|
|
//fonction qui cherche un département donnée dans la ville trouvé par la fonction juste dessous
|
|
int cherchelistcorrespond(MaillonDept* dep, char choixdep[])
|
|
|
|
//fonction qui cherche une correspondance pour une ville donnée dans la liste des villes
|
|
int correspondville(char choixville[], char choixdep[], VilleIUT *tville[], int nbville)
|
|
|
|
//focntion qui vérifié si notre recherche ville et dep ce trouve dans les cartes de candidature d'un candidat==================================================
|
|
int correspondcarte(char choixville[], char choixdep[], Listchoixdept carte)
|
|
|
|
//fonctions pour ajouter une carte de candidature d'un candidat================================================================================================
|
|
//fonction avec du text pour choisir qu'elle ville et departement nous voulons
|
|
void choix(VilleIUT *tville[], int nbville, char choixville[], char choixdep[])
|
|
|
|
//fonction qui ajoute en tete
|
|
Listchoixdept ajoutercarte(Maillonchoix* a, char choixville[], char choixdep[])
|
|
|
|
//fonction général qui utilise des fonctions de vérification et ajoute si tout est bon
|
|
listetuinfo allajoutprocess(VilleIUT *tville[], listetuinfo etu, int nbville)
|
|
|
|
//fonctions pour modifier une carte de candidature d'un candidat===============================================================================================
|
|
|
|
//fonction avec du text pour choisir qu'elle ville et département nous voulons (à noter: la vérification est différente de choix())
|
|
void choix2(Listchoixdept lcarte, char choixville[], char choixdep[])
|
|
|
|
//fonction avec du text pour choisir par qu'elle département nous voulons remplacer le choix2 fait
|
|
void fchoixdep(char choixville[], char choixdep[], VilleIUT *tville[], int nbville)
|
|
|
|
//fonction qui viens appliquer le fchoixdep fait dans notre liste de candidature
|
|
Listchoixdept choixmodifcarte(Listchoixdept dep, char choixville[], char choixdep[], VilleIUT *tville[], int nbville)
|
|
|
|
//affichage uniquement des départements d'une ville
|
|
void affichagedep(MaillonDept* carte)
|
|
|
|
//affichage unique d'une ville et affiche les deps à l'aide de affichagedep
|
|
void affichervillechoix(VilleIUT *villechoix)
|
|
|
|
//fonction qui vérifie le choix de la ville dans la liste des villes
|
|
int correspondvilleonly(char choixville[], VilleIUT *ville[], int nbville)
|
|
|
|
//fonction général qui utilise des fonctions de vérification et modifie si tout est bon
|
|
void modificationcarte(listetuinfo etu, VilleIUT *tville[], int nbville)
|
|
|
|
//ficntions pour supprimer une carte candidature d'un candidat=================================================================================================
|
|
//fonction de suppression avec le free
|
|
Maillonchoix* supp(Listchoixdept carte)
|
|
|
|
//fonction qui cher la correspondance dans notre liste de candidature du choix2 fait et le supp
|
|
Maillonchoix* suppressioncartechoix(char choixville[], char choixdep[], Listchoixdept carte)
|
|
|
|
//fonction général qui utilise des fonctions de vérification et supp si tout est bon
|
|
void suppcarte(listetuinfo etu)
|
|
|
|
//Partie 4 mathéo thierry
|
|
|
|
//affichage qui montre uniquement les résultats d'admission====================================================================================================
|
|
void affichagedepresultat(Maillonchoix* carte, int *suite)
|
|
|
|
//fonction qui change toutes les données pour valider et refuser les autres inscriptions=======================================================================
|
|
void validation(char choixville[], char choixdep[], Maillonchoix* carte, int *ok)
|
|
|
|
//affichage d'un seul étudiant=================================================================================================================================
|
|
void afficheroneetu(listetuinfo *tetu[], char choixnom[], char choixprenom[], int nbEtu)
|
|
|
|
//fonction pour faire le tri du deuxieme tableau de donnée=====================================================================================================
|
|
//fonction qui permute de place deux candidat
|
|
void Permute (listetuinfo *tetutri[], int r1, int r2)
|
|
|
|
//fonction qui chercher le candidat avec le nom le plus petit -> l'alphabétique
|
|
int recherchemin(listetuinfo *tetutri[], int nbEtu, int i)
|
|
|
|
//boucle qui passe tout les candidats du tableau et les permutes
|
|
void triertetu (listetuinfo *tetutri[], int nbEtu) |