@ -26,7 +26,7 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
int trouve = 0 ;
ListeD ld ;
printf ( " \n Entrez le nom d'une ville : " ) ;
scanf ( " %s%*c " , & rech ) ;
scanf ( " %s%*c " , & rech ) ; //Lire Ville
for ( i = 0 ; i < n & & trouve ! = 1 ; i + + ) {
ld = tiut [ i ] - > ldept ;
if ( strcmp ( tiut [ i ] - > ville , rech ) = = 0 ) {
@ -63,14 +63,14 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
printf ( " \n nom du responsable : " ) ;
scanf ( " %s " , respon ) ;
for ( i = 0 ; i < n ; i + + ) {
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) {
tiut [ i ] - > ldept = Enfiler ( tiut [ i ] - > ldept , departement , nbp , respon ) ;
tiut [ i ] - > nbDep = tiut [ i ] - > nbDep + 1 ;
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) { //si la ville existe
tiut [ i ] - > ldept = Enfiler ( tiut [ i ] - > ldept , departement , nbp , respon ) ; //ajouter un departement avec ses caractéristiques
tiut [ i ] - > nbDep = tiut [ i ] - > nbDep + 1 ; // ajouter 1 au nombre de departement de la ville
reussi = 1 ;
}
}
if ( reussi = = 0 )
printf ( " pb erreur syntaxe \n " ) ;
printf ( " pb erreur syntaxe \n " ) ; // si Ville non trouver ou probleme de syntaxe
}
if ( choix = = 3 ) {
//supprimer departement et pauser condition pour choisir qui suppr
@ -79,14 +79,14 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
printf ( " \n departement : " ) ;
scanf ( " %s " , departement ) ;
for ( i = 0 ; i < n ; i + + ) {
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) {
tiut [ i ] - > ldept = suppression ( tiut [ i ] - > ldept , departement ) ;
tiut [ i ] - > nbDep = tiut [ i ] - > nbDep - 1 ;
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) { //si la ville existe
tiut [ i ] - > ldept = suppression ( tiut [ i ] - > ldept , departement ) ; //supprimer un departement avec ses caractéristiques
tiut [ i ] - > nbDep = tiut [ i ] - > nbDep - 1 ; // enlever 1 au nombre de departement de la ville
reussi = 1 ;
}
}
if ( reussi = = 0 )
printf ( " pb erreur syntaxe \n " ) ;
printf ( " pb erreur syntaxe \n " ) ; // si Ville non trouver ou probleme de syntaxe
}
if ( choix = = 4 ) {
//Lancer et arreter phase de canditature
@ -97,13 +97,13 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
printf ( " \n Pour Activer taper A pour desactiver taper D : " ) ;
scanf ( " %c%*c " , & AouD ) ; ;
for ( i = 0 ; i < n ; i + + ) {
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) {
tiut [ i ] - > ldept = ModifiAouD ( tiut [ i ] - > ldept , departement , AouD , n ) ;
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) { //si la ville existe
tiut [ i ] - > ldept = ModifiAouD ( tiut [ i ] - > ldept , departement , AouD , n ) ; //modification de L'etat du departement(fase de candidature activer ou desactiver) d'un departement
reussi = 1 ;
}
}
if ( reussi = = 0 )
printf ( " pb erreur syntaxe \n " ) ;
printf ( " pb erreur syntaxe \n " ) ; // si Ville non trouver ou probleme de syntaxe
}
if ( choix = = 5 ) {
//modification responsable
@ -114,13 +114,13 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
printf ( " \n nom du responsable : " ) ;
scanf ( " %s " , respon ) ;
for ( i = 0 ; i < n ; i + + ) {
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) {
tiut [ i ] - > ldept = ModifiRespon ( tiut [ i ] - > ldept , departement , respon , n ) ;
if ( strcmp ( tiut [ i ] - > ville , Vmodif ) = = 0 ) { //si la ville existe
tiut [ i ] - > ldept = ModifiRespon ( tiut [ i ] - > ldept , departement , respon , n ) ; //modification du nom du responsable
reussi = 1 ;
}
}
if ( reussi = = 0 )
printf ( " pb erreur syntaxe \n " ) ;
printf ( " pb erreur syntaxe \n " ) ; // si Ville non trouver ou probleme de syntaxe
}
if ( choix = = 6 ) {
//Fonction servant au développement du programme, fonction de test uniquement, à supprimer peut-être.
@ -132,14 +132,14 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
}
ListeD suppressionTete ( ListeD ld ) {
ListeD suppressionTete ( ListeD ld ) { //suppression du maillon
ListeD ldsvt ;
ldsvt = ld - > suivant ;
free ( ld ) ;
return ldsvt ;
}
ListeD suppression ( ListeD ld , char * departement ) {
ListeD suppression ( ListeD ld , char * departement ) { //recherche du maillon a supprimer
if ( ld = = NULL )
return ld ;
if ( strcmp ( ld - > departement , departement ) = = 0 )
@ -148,41 +148,41 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
return ld ;
}
ListeD ModifinbP ( ListeD ld , char departement [ 31 ] , int MnbP , int n ) {
ListeD ModifinbP ( ListeD ld , char departement [ 31 ] , int MnbP , int n ) { //modification du nombre de place
int i ;
for ( i = 0 ; i < = n ; i + + ) {
if ( strcmp ( ld - > departement , departement ) = = 0 ) {
ld - > nbP = MnbP ;
return ld ;
}
ld =ld - > suivant ;
ld -> suivant =ModifinbP ( ld - > suivant , departement , MnbP , n ) ;//fonction recursive pour chercherdans le maillon suivant
}
return ld ;
}
ListeD ModifiRespon ( ListeD ld , char departement [ 30 ] , char respon [ 30 ] , int n ) {
ListeD ModifiRespon ( ListeD ld , char departement [ 30 ] , char respon [ 30 ] , int n ) { //modification de nom de responsable
int i ;
for ( i = 0 ; i < = n ; i + + ) {
if ( strcmp ( ld - > departement , departement ) = = 0 ) {
strcpy ( ld - > resp , respon ) ;
return ld ;
}
ld =ld - > suivant ;
ld -> suivant =ModifiRespon ( ld - > suivant , departement , respon , n ) ;//fonction recursive pour chercherdans le maillon suivant
}
return ld ;
}
ListeD ModifiAouD ( ListeD ld , char departement [ 30 ] , char AouD , int n ) {
ListeD ModifiAouD ( ListeD ld , char departement [ 30 ] , char AouD , int n ) { //modification de l'etat du departement(A ou D)
int i ;
for ( i = 0 ; i < = n ; i + + ) {
if ( strcmp ( ld - > departement , departement ) = = 0 ) {
ld - > AouD = AouD ;
return ld ;
}
ld =ld - > suivant ;
ld -> suivant =ModifiAouD ( ld - > suivant , departement , AouD , n ) ;//fonction recursive pour chercherdans le maillon suivant
}
return ld ;
}
ListeD Enfiler ( ListeD ld , char departement [ 30 ] , int nbP , char resp [ 30 ] ) {
ListeD Enfiler ( ListeD ld , char departement [ 30 ] , int nbP , char resp [ 30 ] ) { //ajouter un maillon avec tout ses carachteristique
MaillonDept * mN ;
mN = ( MaillonDept * ) malloc ( sizeof ( MaillonDept ) ) ;
if ( mN = = NULL ) { printf ( " pb ouv malloc " ) ; exit ( 1 ) ; }
@ -202,7 +202,8 @@ void MenuAdministrateur(VilleIUT *tiut[],int n){
}
return ld ;
}
int fsauvegarde ( VilleIUT * tiut [ ] , Candidat * tcandidat [ ] , int n , int nc , int choix , int tmax ) {
int fsauvegarde ( VilleIUT * tiut [ ] , Candidat * tcandidat [ ] , int n , int nc , int choix , int tmax ) { //sauvegarde des deux fichier
int i , k , j ;
//Sauvegarde du fichier d'adhérents
FILE * fe ;
@ -218,9 +219,9 @@ int i, k, j;
return - 2 ;
}
if ( choix = = 5 ) {
fprintf ( fe , " %s %d \n " , tiut [ i ] - > ville , tiut [ i ] - > nbDep ) ;
fprintf ( fe , " %s %d \n " , tiut [ i ] - > ville , tiut [ i ] - > nbDep ) ; //ecrire dans le fichier le nom de la ville
while ( tiut [ i ] - > ldept ! = NULL ) {
fprintf ( fe , " %s " , tiut [ i ] - > ldept - > departement ) ;
fprintf ( fe , " %s " , tiut [ i ] - > ldept - > departement ) ; //ecrire dans le fichier les differents departement
fprintf ( fe , " %d " , tiut [ i ] - > ldept - > nbP ) ;
fprintf ( fe , " %s " , tiut [ i ] - > ldept - > resp ) ;
fprintf ( fe , " %c \n " , tiut [ i ] - > ldept - > AouD ) ;
@ -232,7 +233,7 @@ int i, k, j;
fclose ( fe ) ;
//Sauvegarde du fichier d'activités
FILE * fe2 ;
fe2 = fopen ( " Candidat.don " , " w " ) ; //Ici, le a permet d'écrire à la suite des informations précédentes dans le fichier sans les supprimer
fe2 = fopen ( " Candidat.don " , " w " ) ;
if ( fe2 = = NULL ) {
printf ( " \t pb overture fichier " ) ;
return - 1 ;
@ -245,8 +246,8 @@ int i, k, j;
}
if ( choix = = 5 ) {
fprintf ( fe2 , " %d %s %s %.2f %.2f %.2f %d \n " , tcandidat [ j ] - > numero , tcandidat [ j ] - > nom , tcandidat [ j ] - > prenom , tcandidat [ j ] - > note . Francais , tcandidat [ j ] - > note . Maths , tcandidat [ j ] - > note . Anglais , tcandidat [ j ] - > nb_choix ) ;
while ( tcandidat [ j ] - > lchoix ! = NULL ) {
fprintf ( fe2 , " %s " , tcandidat [ j ] - > lchoix - > ville ) ;
while ( tcandidat [ j ] - > lchoix ! = NULL ) { //ecrire les candidat
fprintf ( fe2 , " %s " , tcandidat [ j ] - > lchoix - > ville ) ; //ecrir leur choix
fprintf ( fe2 , " %s " , tcandidat [ j ] - > lchoix - > departement ) ;
fprintf ( fe2 , " %d " , tcandidat [ j ] - > lchoix - > decision ) ;
fprintf ( fe2 , " %d \n " , tcandidat [ j ] - > lchoix - > validation ) ;