MODIF fonction marche dans utilisateur

master
Matheo THIERRY 2 years ago
parent 6f8018533a
commit c3c36815a4

@ -4,15 +4,15 @@ cheval
blanc blanc
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -21,15 +21,15 @@ fou
blanc blanc
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -38,15 +38,15 @@ roi
blanc blanc
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -55,15 +55,15 @@ reine
blanc blanc
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique Biologie
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -72,15 +72,15 @@ tour
blanc blanc
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -89,15 +89,15 @@ pion
blanc blanc
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -106,15 +106,15 @@ cheval
noir noir
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -123,15 +123,15 @@ fou
noir noir
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -140,15 +140,15 @@ roi
noir noir
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -157,15 +157,15 @@ reine
noir noir
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -174,15 +174,15 @@ tour
noir noir
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0
@ -191,15 +191,15 @@ pion
noir noir
10 12 13 16 10 12 13 16
3 3
clermont-ferrand Clermont-Ferrand
informatique informatique
0 0
0 0
grenoble Grenoble
informatique informatique
0 0
0 0
aurillac Aurillac
bio-informatique bio-informatique
0 0
0 0

@ -3,6 +3,7 @@ Informatique 112 Dupont Jean
Clermont-Ferrand 2 Clermont-Ferrand 2
Informatique 136 Simon Carine Informatique 136 Simon Carine
Biologie 120 Giroud Olivier Biologie 120 Giroud Olivier
Aurillac 1 Aurillac 1
@ -10,8 +11,11 @@ Bio-informatique 120 Mbappe Kylian
Valence 2 Valence 2
Chimie 97 Pogba Paul Chimie 97 Pogba Paul
Physique 130 Depay Memphis Physique 130 Depay Memphis
Lyon 2 Lyon 2
Géosciences 122 Santan Dave Géosciences 122 Santan Dave
Economie 135 Jean-Michel Aulas Economie 135 Jean-Michel Aulas

@ -5,6 +5,6 @@
int main(void){ int main(void){
test1(); test();
return 0; return 0;
} }

BIN
sae

Binary file not shown.

@ -356,7 +356,7 @@ void enregistrementinfo(FILE *fe, listetuinfo *etu){
Listchoixdept b; Listchoixdept b;
int i=0; int i=0;
b = etu->carte; b = etu->carte;
fprintf(fe, "%d\n%s\n%s\n%d %d %d %d\n%d\n", etu->numeroetu, etu->nometu, etu->prenometu, etu->notes, etu->nbchoix); fprintf(fe, "%d\n%s\n%s\n%d %d %d %d\n%d\n", etu->numeroetu, etu->nometu, etu->prenometu, etu->notes[0], etu->notes[1], etu->notes[2], etu->notes[3], etu->nbchoix);
enregistrementcarte(fe, b, etu->nbchoix); enregistrementcarte(fe, b, etu->nbchoix);
} }
@ -450,9 +450,10 @@ int correspondcarte(char choixville[], char choixdep[], Listchoixdept carte){
//ajouter ============================================================================================================================================= //ajouter =============================================================================================================================================
void choix(VilleIUT *tville[], int nbville, char choixville[], char choixdep[]){ void choix(VilleIUT *tville[], int nbville, char choixville[], char choixdep[]){
int i, ok=0; int i, ok=1;
printf("ville : "); printf("ville : ");
fgets(choixville, 31, stdin); fgets(choixville, 31, stdin);
fgets(choixville, 31, stdin);
choixville[strlen(choixville)-1]='\0'; choixville[strlen(choixville)-1]='\0';
printf("departement : "); printf("departement : ");
fgets(choixdep, 31, stdin); fgets(choixdep, 31, stdin);
@ -482,18 +483,21 @@ Listchoixdept ajoutercarte(Maillonchoix* a, char choixville[], char choixdep[]){
return carte; return carte;
} }
void allajoutprocess(VilleIUT *tville[], listetuinfo etu, int nbville){ listetuinfo allajoutprocess(VilleIUT *tville[], listetuinfo etu, int nbville){
int i, ok; int i, ok;
Listchoixdept b; Listchoixdept b;
b = etu.carte; b = etu.carte;
char choixville[31], choixdep[31]; char choixville[31], choixdep[31];
affichageville(tville, nbville); affichageville(tville, nbville);
choix(tville, nbville, choixville, choixdep); choix(tville, nbville, choixville, choixdep);
printf("%s %s \n", choixville, choixdep);
ok = correspondcarte(choixville, choixdep, b); ok = correspondcarte(choixville, choixdep, b);
printf("%d\n", ok);
if(ok==0){b = ajoutercarte(b, choixville, choixdep);} if(ok==0){b = ajoutercarte(b, choixville, choixdep);}
else{printf("\t< choix deja existant >\n");} else{printf("\t< choix deja existant >\n");}
etu.carte=b; etu.carte=b;
}// possible de devoir rerajouter b dans etu ??????????? et return nb+1 return etu;
}
//modifier ============================================================================================================================================================== //modifier ==============================================================================================================================================================
@ -501,6 +505,7 @@ void choix2(Listchoixdept lcarte, char choixville[], char choixdep[]){
int ok; int ok;
printf("ville : \n"); printf("ville : \n");
fgets(choixville, 31, stdin); fgets(choixville, 31, stdin);
fgets(choixville, 31, stdin);
choixville[strlen(choixville)-1]='\0'; choixville[strlen(choixville)-1]='\0';
printf("departement : \n"); printf("departement : \n");
fgets(choixdep, 31, stdin); fgets(choixdep, 31, stdin);
@ -541,6 +546,7 @@ Listchoixdept choixmodifcarte(Listchoixdept dep, char choixville[], char choixde
} }
} }
dep->suivant = choixmodifcarte(dep->suivant, choixville, choixdep, tville, nbville); dep->suivant = choixmodifcarte(dep->suivant, choixville, choixdep, tville, nbville);
return dep;
} }
void affichagedep(MaillonDept* carte){ void affichagedep(MaillonDept* carte){
@ -558,35 +564,33 @@ void affichervillechoix(VilleIUT *villechoix){
printf("\n"); printf("\n");
} }
int correspondvilleonly(char choixville[], VilleIUT *ville){ int correspondvilleonly(char choixville[], VilleIUT *ville[], int nbville){
Listdept b; int i;
if(strcmp(ville->Ville,choixville)==0){ for(i=0; i<nbville; i++){
affichervillechoix(ville); if(strcmp(ville[i]->Ville,choixville)==0){
return 1; return 1;
} }
} }
}
void modificationcarte(listetuinfo etu, VilleIUT *tville[], int nbville){ void modificationcarte(listetuinfo etu, VilleIUT *tville[], int nbville){
int i, ok; int ok;
char choixville[31], choixdep[31]; char choixville[31], choixdep[31];
Listchoixdept lcarte; Listchoixdept lcarte;
lcarte=etu.carte; lcarte=etu.carte;
affichagecarte(lcarte); affichagecarte(lcarte);
choix2(lcarte, choixville, choixdep); choix2(lcarte, choixville, choixdep);
for(i=0; i<nbville; i++){ ok = correspondvilleonly(choixville, tville, nbville);
ok = correspondvilleonly(choixville, tville[i]);
if(ok==1){ if(ok==1){
fchoixdep(choixville, choixdep, tville, nbville);
lcarte = choixmodifcarte(lcarte, choixville, choixdep, tville, nbville); lcarte = choixmodifcarte(lcarte, choixville, choixdep, tville, nbville);
etu.carte=lcarte; etu.carte=lcarte;
} }
else{printf("\t< choix deja existant >\n");} else{printf("\t< choix pas existant >\n");}
}
} }
//supprimer ========================================================================================================================================== //supprimer ==========================================================================================================================================
Maillonchoix* supptete(Listchoixdept carte){ Maillonchoix* supp(Listchoixdept carte){
Maillonchoix *tmp; Maillonchoix *tmp;
tmp=carte->suivant; tmp=carte->suivant;
free(carte); free(carte);
@ -597,11 +601,12 @@ Maillonchoix* suppressioncartechoix(char choixville[], char choixdep[], Listchoi
if(carte==NULL){exit(1);} if(carte==NULL){exit(1);}
if(strcmp(carte->Ville,choixville)==0){ if(strcmp(carte->Ville,choixville)==0){
if(strcmp(choixdep,carte->dep)==0){ if(strcmp(choixdep,carte->dep)==0){
supptete(carte); carte = supp(carte);
exit(1); return carte;
} }
} }
carte = suppressioncartechoix(choixville, choixdep, carte->suivant); carte->suivant = suppressioncartechoix(choixville, choixdep, carte->suivant);
return carte;
} }
void suppcarte(listetuinfo etu){ void suppcarte(listetuinfo etu){
@ -613,6 +618,9 @@ void suppcarte(listetuinfo etu){
choix2(lcarte, choixville, choixdep); choix2(lcarte, choixville, choixdep);
lcarte = suppressioncartechoix(choixville, choixdep, lcarte); lcarte = suppressioncartechoix(choixville, choixdep, lcarte);
etu.carte=lcarte; etu.carte=lcarte;
affichageetu(etu);
lcarte=etu.carte;
affichagecarte(lcarte);
} }
//========================================================================================================== //==========================================================================================================
@ -725,7 +733,7 @@ void affichagedepresultat(Maillonchoix* carte, int *suite){
// validation // validation
void validation(char choixville[], char choixdep[], Maillonchoix* carte, int *ok, Maillonatt lplace, int nbplace, listetuinfo etu){ void validation(char choixville[], char choixdep[], Maillonchoix* carte, int *ok){
if(carte==NULL){return;} if(carte==NULL){return;}
if(strcmp(carte->Ville,choixville)==0){ if(strcmp(carte->Ville,choixville)==0){
if(strcmp(carte->dep,choixdep)==0){ if(strcmp(carte->dep,choixdep)==0){
@ -736,18 +744,41 @@ void validation(char choixville[], char choixdep[], Maillonchoix* carte, int *ok
} }
} }
validation(choixville, choixdep, carte->suivant, ok); validation(choixville, choixdep, carte->suivant, ok);
if(ok==1){ if(*ok==1){
if(carte->decision==1); if(carte->decision==1);
} }
} }
void afficheroneetu(listetuinfo *tetu[], char choixnom[], char choixprenom[], int nbEtu){
int i;
listetuinfo etu;
for(i=0; i<nbEtu; i++){
if(strcmp(tetu[i]->nometu,choixnom)==0){
if(strcmp(tetu[i]->prenometu,choixprenom)==0){
etu = *tetu[i];
affichageetu(etu);
}
}
}printf("<! mauvaise saisie !>");
}
// MENU PARTIE 1 // MENU PARTIE 1
void menuValidation(){} void menuValidation(listetuinfo etu){
int ok;
char choixville[31], choixdep[31];
Listchoixdept lcarte;
lcarte=etu.carte;
choix2(lcarte, choixville, choixdep);
validation(choixville, choixdep, lcarte, &ok);
}
void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb) { void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille *departementVille, char nomFich[]) {
int choixP1U; int choixP1U;
int suite=0; int suite=0;
int reponse;
Maillonchoix* lcarte;
while (choixP1U >= 1 || choixP1U <= 4) { while (choixP1U >= 1 || choixP1U <= 4) {
printf("\n"); printf("\n");
printf("---------------------- MENU UTILISATEUR -----------------------\n"); printf("---------------------- MENU UTILISATEUR -----------------------\n");
@ -761,9 +792,6 @@ void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb) {
printf("| 7 - Supprimer un souhait |\n"); printf("| 7 - Supprimer un souhait |\n");
printf("| 8 - Consulter ses informations |\n"); printf("| 8 - Consulter ses informations |\n");
printf("| 9 - Consulter où l'on est admis |\n"); printf("| 9 - Consulter où l'on est admis |\n");
printf("| 10 - |\n");
printf("| 11 - |\n");
printf("| 12 - |\n");
printf("| |\n"); printf("| |\n");
printf("| 15 - Retour |\n"); printf("| 15 - Retour |\n");
printf("| Votre choix => "); printf("| Votre choix => ");
@ -784,7 +812,7 @@ void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb) {
afficheIUTdepParticulier(tabVille, nb); afficheIUTdepParticulier(tabVille, nb);
break; break;
case 5: case 5:
allajoutprocess(tabVille, etu, nb); etu=allajoutprocess(tabVille, etu, nb);
etu.nbchoix = etu.nbchoix+1; etu.nbchoix = etu.nbchoix+1;
break; break;
case 6: case 6:
@ -796,17 +824,23 @@ void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb) {
break; break;
case 8: case 8:
affichageetu(etu); affichageetu(etu);
lcarte=etu.carte;
affichagecarte(lcarte);
break; break;
case 9: case 9:
affichagedepresultat(etu->lcarte, &suite); lcarte=etu.carte;
affichagedepresultat(lcarte, &suite);
if(suite==1){ if(suite==1){
int reponse;
printf("| 1 - valider un veux |\n"); printf("| 1 - valider un veux |\n");
printf("| autre chiffre pour sortir |\n"); printf("| autre chiffre pour sortir |\n");
printf("| =>"); printf("| =>");
scanf("%d", &reponse); scanf("%d", &reponse);
//le menu de validation avec choix pour ce que l'on peux valider et apres -> validation et enregistrement //le menu de validation avec choix pour ce que l'on peux valider et apres -> validation et enregistrement
if(reponse==1){menuValidation();} if(reponse==1){
menuValidation(etu);
enregistrementetudiants(nomFich, tetu, nbEtu);
departementVille = useAllFunctionsCandidature(tetu, nbEtu);
}
} }
break; break;
case 15: case 15:
@ -817,6 +851,7 @@ void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb) {
void menuP1Administrateur(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille *departementVille) { void menuP1Administrateur(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille *departementVille) {
int choixP1A = 0; int choixP1A = 0;
char choixnom[21], choixprenom[21];
while (choixP1A >= 1 || choixP1A <= 4) { while (choixP1A >= 1 || choixP1A <= 4) {
printf("\n"); printf("\n");
printf("---------------------- MENU ADMINISTRATEUR -----------------------\n"); printf("---------------------- MENU ADMINISTRATEUR -----------------------\n");
@ -828,7 +863,8 @@ void menuP1Administrateur(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int
printf("| 5 - Modifier nom responsable |\n"); printf("| 5 - Modifier nom responsable |\n");
printf("| 6 - Lancer analyse candidature |\n"); printf("| 6 - Lancer analyse candidature |\n");
printf("| 7 - Afficher liste DES candidatures |\n"); printf("| 7 - Afficher liste DES candidatures |\n");
printf("| 8 - Afficher liste des candidats par départements |\n"); printf("| 8 - Afficher une seul etudiant |\n");
printf("| 9 - Afficher candidats par odre alphabétique |\n");
printf("| |\n"); printf("| |\n");
printf("| 15 - Retour |\n"); printf("| 15 - Retour |\n");
printf("| Votre choix => "); printf("| Votre choix => ");
@ -859,6 +895,17 @@ void menuP1Administrateur(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int
affichealletu(tetu, nbEtu); affichealletu(tetu, nbEtu);
break; break;
case 8: case 8:
printf("| quel est le nom recherché ? |\n");
printf("| =>");
fgets(choixnom, 21, stdin);
choixnom[strlen(choixnom)-1]='\0';
printf("| quel est le prénom recherché ? |\n");
printf("| =>");
fgets(choixprenom, 21, stdin);
choixprenom[strlen(choixprenom)-1]='\0';
afficheroneetu(tetu, choixnom, choixprenom, nbEtu);
break;
case 9:
break; break;
case 15: case 15:
sauvegarde(tabVille, nb);// mettre menu général sauvegarde(tabVille, nb);// mettre menu général
@ -889,7 +936,7 @@ void menuPrincipal(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu,
scanf("%d", &num); scanf("%d", &num);
ligneetu = recherdicoetu(tetu, nbEtu, num); ligneetu = recherdicoetu(tetu, nbEtu, num);
etu = *tetu[ligneetu]; etu = *tetu[ligneetu];
menuP1Utilisateur(etu, tabVille, nb); menuP1Utilisateur(etu, tabVille, nb, tetu, nbEtu, departementVille, nomFich);
break; break;
case 2: case 2:
menuP1Administrateur(tabVille, nb, tetu, nbEtu, departementVille); menuP1Administrateur(tabVille, nb, tetu, nbEtu, departementVille);

@ -91,13 +91,13 @@ int correspondville(char choixville[], char choixdep[], VilleIUT *tville[], int
int correspondcarte(char choixville[], char choixdep[], Listchoixdept carte); int correspondcarte(char choixville[], char choixdep[], Listchoixdept carte);
void choix(VilleIUT *tville[], int nbville, char choixville[], char choixdep[]); void choix(VilleIUT *tville[], int nbville, char choixville[], char choixdep[]);
Listchoixdept ajoutercarte(Maillonchoix* a, char choixville[], char choixdep[]); Listchoixdept ajoutercarte(Maillonchoix* a, char choixville[], char choixdep[]);
void allajoutprocess(VilleIUT *tville[], listetuinfo etu, int nbville); listetuinfo allajoutprocess(VilleIUT *tville[], listetuinfo etu, int nbville);
void choix2(Listchoixdept lcarte, char choixville[], char choixdep[]); void choix2(Listchoixdept lcarte, char choixville[], char choixdep[]);
void fchoixdep(char choixville[], char choixdep[], VilleIUT *tville[], int nbville); void fchoixdep(char choixville[], char choixdep[], VilleIUT *tville[], int nbville);
Listchoixdept choixmodifcarte(Listchoixdept dep, char choixville[], char choixdep[], VilleIUT *tville[], int nbville); Listchoixdept choixmodifcarte(Listchoixdept dep, char choixville[], char choixdep[], VilleIUT *tville[], int nbville);
void affichagedep(MaillonDept* carte); void affichagedep(MaillonDept* carte);
void affichervillechoix(VilleIUT *villechoix); void affichervillechoix(VilleIUT *villechoix);
int correspondvilleonly(char choixville[], VilleIUT *ville); int correspondvilleonly(char choixville[], VilleIUT *ville[], int nbville);
void modificationcarte(listetuinfo etu, VilleIUT *tville[], int nbville); void modificationcarte(listetuinfo etu, VilleIUT *tville[], int nbville);
Maillonchoix* suppressioncartechoix(char choixville[], char choixdep[], Listchoixdept carte); Maillonchoix* suppressioncartechoix(char choixville[], char choixdep[], Listchoixdept carte);
void suppcarte(listetuinfo etu); void suppcarte(listetuinfo etu);
@ -134,6 +134,6 @@ typedef struct listatt{
void test(void); void test(void);
void menuP1Utilisateur(listetuinfo etu, VilleIUT *v[], int nb); void menuP1Utilisateur(listetuinfo etu, VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille *departementVille, char nomFich[]);
void menuP1Administrateur(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille* departementVille); void menuP1Administrateur(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille* departementVille);
void menuPrincipal(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille* departementVille, char nomFich[]); void menuPrincipal(VilleIUT *tabVille[], int nb, listetuinfo *tetu[], int nbEtu, DepartementVille* departementVille, char nomFich[]);
Loading…
Cancel
Save