main
DahmaneYanis 2 years ago
parent 79a13a5529
commit 9771efd950

@ -1,4 +1,5 @@
1 5
2 45
3 14
2 7
1 10 piscine
2 10 foot
3 10 dessin
4 20 course
5 10 judo

@ -1,6 +1,7 @@
78 1 45
41 1 14
56 1 24
49 2 14
96 2 3
74 2 0
78 1 35
41 1 14
56 1 24
49 2 14
96 2 3
74 2 0
1 1 123456

@ -1,10 +1,8 @@
#include "global.h"
#include <string.h>
void Affichage_entree();
void Affichage_activite();
void Gestion_activite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents );
void Gestion_activite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents, char Tab_nom_activite[100][20], int Tab_nb_activite_adherent[100]);
void Supprimer_activite();
@ -12,6 +10,19 @@ void Supprimer_activite();
int effectuer_activite( int Tab_credit_carte[], int Tab_tarif_activite[], int num_adherant, int nbr_activite, int Tab_numero_carte_adherent[], int nbAdherents, int Tab_Etat_carte[]);
int effectuer_activite(int num_adherant , int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents, char Tab_nom_activite[100][20], int Tab_nb_activite_adherent[100]);
int verif_adherent(int num_adherant, int Tab_Presence_adherent[], int nbAdherents, int Tab_numero_carte_adherent[], int Tab_nb_activite_adherent[100]);
int verif_activite(int Tab_numero_activite[],int activite, int nbActivite);
void modif_crea_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite);
void affichage_activite( int Tab_numero_activite[], int Tab_tarif_activite[], char Tab_nom_activite[100][20], int nbActivite, int Tab_nbr_entree_activite[]);
void creer_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite);
void supprimer_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite);
int verif_adherent(int num_adherant, int Tab_Presence_adherent[], int nbAdherents, int Tab_numero_carte_adherent[]);
void modifier_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite);

@ -13,4 +13,6 @@ int TrouverAdherent(int tabNoCarte[], int nbAdherents, int noCarte, int *trouve)
void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int nbAdherents);
void CreerAdherent(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int *nbAdherents, int taillePhysique);
void CreerAdherent(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int *nbAdherents, int taillePhysique);
void Bonus(int indice, int tabPointCarte[]);

@ -2,9 +2,11 @@
int chargement_tableaux_adherent(int Tab_numero_carte_adherent[],int Tab_Etat_carte[],int Tab_credit_carte[]);
int chargement_tableaux_activite(int Tab_numero_activite[], int Tab_tarif_activite[]);
int chargement_tableaux_activite(int Tab_numero_activite[], int Tab_tarif_activite[],char Tab_nom_activite[100][20]);
int enregistrement_tableaux_adherent(int Tab_numero_carte_adherent[],int Tab_Etat_carte[],int Tab_credit_carte[]);
void dechargement_adherent(int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[]);
int enregistrement_tableaux_activite(int Tab_numero_activite[], int Tab_tarif_activite[]);
void dechargement_activite( int Tab_numero_activite[], int Tab_tarif_activite[], char Tab_nom_activite[100][20]);
void dechargement_activite( int Tab_numero_activite[], int Tab_tarif_activite[], char Tab_nom_activite[100][20]);

@ -8,7 +8,7 @@ void GestionCompteAdherent(int tabNoCarte[], int tabEtatCarte[], int tabPointCar
int CibleAdherent(int tabNoCarte[], int nbAdherents);
void AfficheBandeauGCA(void);
void MenuActivite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents );
void MenuActivite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents, int Tab_nom_activite[100][20] );
void MenuGlobal(void);
void AfficheBandeauMP(void);

@ -3,31 +3,410 @@
#include "../header/adherent.h"
#include "../header/menus.h"
void Affichage_entree()
void modif_crea_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite)
{
printf("\n\n Affichage des entrees par activite dans la journee\n");
printf(" --------------------------------------------------\n\n\n");
clean;
int choix = 0;
printf("=================================================================================\n");
printf(" Gestion des activites\n");
printf("=================================================================================\n");
//affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
printf(" Souhaitez vous : \n");
printf(" ---------------\n\n");
printf(" - 1.) Creer une activite.\n - 2.) Modifier une activite. \n - 3.) Supprimer une activite.\n - 4.) Afficher les Activites\n - 5) retour menu principal.\n\n");
printf(" - Votre reponse : ");
scanf("%d%*c", &choix);
switch (choix)
{
case 1 :clean;
creer_activite(Tab_numero_activite, Tab_nom_activite, Tab_tarif_activite, Tab_nbr_entree_activite, nbActivite);
break;
case 3 :
supprimer_activite(Tab_numero_activite, Tab_nom_activite, Tab_tarif_activite, Tab_nbr_entree_activite, nbActivite);
break;
case 2 :
clean;
modifier_activite(Tab_numero_activite, Tab_nom_activite, Tab_tarif_activite, Tab_nbr_entree_activite, nbActivite);
break;
case 4 :
clean;
printf("=================================================================================\n");
printf(" Affichage des activites\n");
printf("=================================================================================\n\n\n");
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
char trash;
wait;
break;
case 5 : return;
}
}
void Affichage_activite()
void creer_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite)
{
printf("\n\n Affichage des activites\n");
printf(" --------------------------------------------------\n\n\n");
printf("=================================================================================\n");
printf(" Creer une activite\n");
printf("=================================================================================\n");
int i = 0, position = 0, valeur_temp =0;
char reponse;
for (i = 0; i < 100; i ++)
{
if ( Tab_numero_activite[i] == 0)
{
position = i;
i = 190;
}
else position = 123;
}
if (position == 123)
{
printf("\n ---> L'espace de stockage est trop faible, veuillez supprimer des activites.\n\n");
printf(" - Souhaitez vous supprimer une activites ? \n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if (reponse == 'O' || reponse == 'o')
supprimer_activite(Tab_numero_activite, Tab_nom_activite, Tab_tarif_activite, Tab_nbr_entree_activite, nbActivite);
else return;
}
printf("\n\n Quel est le nom de l'activite ? : \n");
printf( " -------------------------------\n\n - Votre reponse : ");
scanf("%s", Tab_nom_activite[position]);
nbActivite = nbActivite +1;
printf("\n\n - Quel est son numero : ");
scanf("%d", &valeur_temp);
Tab_numero_activite[position] = valeur_temp;
for (i = 0; i < 100; i ++)
{
if (i == position) i = i +1;
while ( Tab_numero_activite[i] == Tab_numero_activite[position])
{
printf("\n\n ---> Numero deja pris, reessayer : ");
scanf("%d", &valeur_temp);
Tab_numero_activite[position] = valeur_temp;
i = 0 ;
}
}
printf("\n\n - Quel est son Tarif : ");
scanf("%d", &valeur_temp);
Tab_tarif_activite[position] = valeur_temp;
printf(" \n\nL'activite %s a bien ete creee ! \n \n Son numero est le %d\n Son tarif est de %d\n\n",
Tab_nom_activite[position], Tab_numero_activite[position], Tab_tarif_activite[position]);
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
char trash;
wait;
}
void modifier_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite)
{
printf("=================================================================================\n");
printf(" Modifier une activite\n");
printf("=================================================================================\n");
int i = 0, position = 0, valeur_temp =0, num = 0;
char reponse;
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
printf("\n\n Quel est le numero de l'activite a modifier : ");
scanf("%d%*c", &num);
for ( int i = 0; i < 100; i ++)
{
if ( Tab_numero_activite[i] == num)
{
position = i;
i = 190;
}
else position = 200;
}
while (position == 200)
{
printf("\n ---> Activite inexistante ! \n\n");
printf(" - Souhaitez vous recommencer ? \n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if (reponse == 'O' || reponse == 'o')
{
printf(" \n\nQuelle activite souhaitez vous modifier : ");
scanf("%d%*c", &num);
for ( int i = 0; i < 100; i ++)
{
if ( Tab_numero_activite[i] == num)
{
position = i;
i = 190;
}
else position = 200;
}
}
else return;
}
printf(" \nSouhaitez vous changer le nom ? \n\n");
printf(" - ( O /N ) : ");
scanf("%c%*c",&reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if ( reponse == 'o' || reponse == 'O')
{
printf("\n\n Quel est le nouveau nom de l'activite : ");
scanf("%s%*c", Tab_nom_activite[position]);
clean;
printf("=================================================================================\n");
printf(" Modifier une activite\n");
printf("=================================================================================\n");
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
}
printf(" Souhaitez vous changer le numero ? \n\n");
printf(" - ( O /N ) : ");
scanf("%c%*c",&reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if ( reponse == 'o' || reponse == 'O')
{
printf("\n\n Quel est le nouveau numero de l'activite : ");
scanf("%d%*c", &valeur_temp);
Tab_numero_activite[position] = valeur_temp;
for (i = 0; i < 100; i ++)
{
if (i == position) i = i +1;
while ( Tab_numero_activite[i] == Tab_numero_activite[position])
{
printf("\n\n Numero deja pris, reessayer : ");
scanf("%d%c", &valeur_temp);
Tab_numero_activite[position] = valeur_temp;
i = 0 ;
}
}
clean;
printf("=================================================================================\n");
printf(" Modifier une activite\n");
printf("=================================================================================\n");
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
}
printf(" Souhaitez vous changer le Tarif ? \n\n");
printf(" - ( O /N ) : ");
scanf("%c%*c",&reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if ( reponse == 'o' || reponse == 'O')
{
printf("\n\n Quel est le nouveau tarif de l'activite : ");
printf("\n\n Quel est son Tarif : ");
scanf("%d%*c", &valeur_temp);
Tab_tarif_activite[position] = valeur_temp;
clean;
printf("=================================================================================\n");
printf(" Modifier une activite\n");
printf("=================================================================================\n");
}
printf(" L'activite %s a bien ete modifie ! \n \n Son numero est le %d\n Son tarif est de %d\n\n",
Tab_nom_activite[position], Tab_numero_activite[position], Tab_tarif_activite[position]);
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
void Supprimer_activite()
char trash;
wait;
}
void supprimer_activite(int Tab_numero_activite[], char Tab_nom_activite[100][20], int Tab_tarif_activite[], int Tab_nbr_entree_activite[], int nbActivite)
{
clean;
printf("=================================================================================\n");
printf(" Supprimer une activite\n");
printf("=================================================================================\n");
int i = 0, position = 0, valeur_temp =0, num = 0;
char reponse;
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
printf("\n\n Quel est le numero de l'activite a supprimer : ");
scanf("%d%*c", &num);
for ( int i = 0; i < 100; i ++)
{
if ( Tab_numero_activite[i] == num)
{
position = i;
i = 190;
}
else position = 200;
}
while (position == 200)
{
printf("\n ---> Activite inexistante ! \n\n");
printf(" - Souhaitez vous recommencer ? \n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if (reponse == 'O' || reponse == 'o')
{
printf(" \n\nQuelle activite souhaitez vous supprimer ? : ");
scanf("%d%*c", &num);
for ( int i = 0; i < 100; i ++)
{
if ( Tab_numero_activite[i] == num)
{
position = i;
i = 190;
}
else position = 200;
}
}
else return;
}
Tab_numero_activite[position] = 0;
clean;
printf("=================================================================================\n");
printf(" Supprimer une activite\n");
printf("=================================================================================\n");
printf(" \n\n L'activite %s ( numero %d ) a bien ete supprimee ! \n\n", Tab_nom_activite[position], num);
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbActivite, Tab_nbr_entree_activite);
char trash;
wait
}
void affichage_activite( int Tab_numero_activite[], int Tab_tarif_activite[], char Tab_nom_activite[100][20], int nbActivite, int Tab_nbr_entree_activite[])
{
printf("\n\n Supprimer une activite\n");
printf(" --------------------------------------------------\n\n\n");
printf(" ====================================================================================================\n");
printf(" | Nom de l'activite | Numero de l'activite | Tarif de l'activite | Nombre d'entree dans la journee |\n");
printf(" |-------------------|----------------------|---------------------|---------------------------------|\n");
for ( int i = 0; i < nbActivite; i ++)
{
if (Tab_numero_activite[i] != 0) printf(" |%13s | %11d | %11d | %15d | \n",
Tab_nom_activite[i], Tab_numero_activite[i], Tab_tarif_activite[i], Tab_nbr_entree_activite[i]);
}
printf(" ====================================================================================================\n");
}
void Gestion_activite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents )
void Gestion_activite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents, char Tab_nom_activite[100][20], int Tab_nb_activite_adherent[100])
{
char reponse ='g';
int verif_2 = 0;
clean;
scanf("%*c");
int num_adherant = 0, activite = 0, verif = 0, i = 1;
@ -68,55 +447,120 @@ void Gestion_activite(int Tab_numero_activite[], int Tab_tarif_activite[],int
printf(" - Votre reponse : ");
scanf("%d", &num_adherant);
verif = verif_adherent( num_adherant, Tab_Presence_adherent, nbAdherents, Tab_numero_carte_adherent); // Verifie que la personne ne soit pas déjà venu
verif = verif_adherent(num_adherant,Tab_Presence_adherent, nbAdherents, Tab_numero_carte_adherent, Tab_nb_activite_adherent);
if ( verif_2 == 4)
{
printf(" ---> Adherent deja fait son nombre max d'activite ! \n\n");
return;
}
if (verif == 1)
{
printf("\n ---> Adherent deja venu au centre aujourd'hui ! \n");
return;
}
if (verif == 2)
{
printf("\n ---> Adherent non existant ! \n");
return;
}
while (verif != 1 && i <= 3)
if (verif == 3) {
return;
}
while (verif != 1 || verif != 3 || verif_2 != 4 )
{
verif = effectuer_activite(Tab_credit_carte,Tab_tarif_activite,num_adherant, nbr_activite, Tab_numero_carte_adherent, nbAdherents, Tab_Etat_carte);
i = i +1;
if (verif ==2 ) return;
verif_2 = verif_adherent(num_adherant,Tab_Presence_adherent, nbAdherents, Tab_numero_carte_adherent, Tab_nb_activite_adherent);
verif = effectuer_activite( num_adherant, Tab_numero_activite, Tab_tarif_activite, Tab_nbr_entree_activite, Tab_numero_carte_adherent, Tab_Etat_carte, Tab_credit_carte, Tab_Presence_adherent, nbr_activite, nbAdherents, Tab_nom_activite, Tab_nb_activite_adherent);
}
if (verif >3 ) printf("\n ---> vous avez déjà fait 3 activités dans la journée !\n Revenez demain !\n\n");
}
int effectuer_activite( int Tab_credit_carte[], int Tab_tarif_activite[], int num_adherant, int nbr_activite, int Tab_numero_carte_adherent[], int nbAdherents, int Tab_Etat_carte[])
int effectuer_activite(int num_adherant, int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents, char Tab_nom_activite[100][20], int Tab_nb_activite_adherent[100])
{
int activite = 0, verif = 0, position = 0;
clean;
printf("================================================================\n");
printf(" Effectuer une Activite\n");
printf("================================================================\n\n\n");
int activite = 0, verif = 0, position_adherent = 0, position_activite;
char reponse;
printf("\n\n - Quelle activite l'adherent souhaite t'il faire : \n");
printf( " -----------------------------------------------\n");
Affichage_activite();
printf("\n\n\n - Les activite disponibles : \n");
printf( " -----------------------------\n\n\n");
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbr_activite, Tab_nbr_entree_activite);
printf("\n\n Choississez le numero de l'activite souhaitee : \n");
printf( " ----------------------------------------------\n");
printf(" - Votre reponse : ");
scanf("%d%*c", &activite);
position = TrouverAdherent(Tab_numero_carte_adherent, nbAdherents, num_adherant, &verif);
position_adherent = TrouverAdherent(Tab_numero_carte_adherent, nbAdherents, num_adherant, &verif);
verif = Tab_credit_carte[position] - Tab_tarif_activite[activite];
verif = verif_activite(Tab_numero_activite, activite, nbr_activite);
printf("\n test 23 : valezur de vrif : %d", verif);
while ( verif == -1)
{
printf("\n ---> Activite inexistante ! \n\n");
printf(" Souhaitez vous poursuivre ? \n");
printf(" --------------------------\n\n");
printf(" - ( O / N ) : ");
scanf("%c%*c", &reponse);
while ( reponse != 'O' && reponse !='o' && reponse !='n' && reponse != 'N')
{
printf("\n\n ---> Erreur de saisie !\n\n");
printf(" Saisir a nouveau : \n");
printf(" -----------------");
printf("\n\n - ( O / N ) : ");
scanf("%c%*c", &reponse);
}
if ( reponse == 'n' || reponse == 'N') return 1;
else
{
clean;
printf("================================================================\n");
printf(" Effectuer une Activite\n");
printf("================================================================\n\n\n");
printf("\n\n\n - Les activite disponibles : \n");
printf( " -----------------------------\n\n\n");
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbr_activite, Tab_nbr_entree_activite);
printf("\n\n - Quelle activite l'adherent souhaite t'il faire : \n");
printf( " -----------------------------------------------\n");
affichage_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nom_activite, nbr_activite, Tab_nbr_entree_activite);
printf("\n valeur credit adhent : %d\n", Tab_credit_carte[position]);
printf("\n\n Choississez le numero de l'activite souhaitee : \n");
printf( " ----------------------------------------------\n");
printf(" - Votre reponse : ");
scanf("%d%*c", &activite);
verif = verif_activite(Tab_numero_activite, activite, nbr_activite);
}
}
position_activite = verif;
printf("\n valeur tarif : %d \n", Tab_tarif_activite[activite]);
verif = Tab_credit_carte[position_adherent] - Tab_tarif_activite[position_activite-1];
while (verif < 0)
{
@ -137,13 +581,19 @@ int effectuer_activite( int Tab_credit_carte[], int Tab_tarif_activite[], int nu
if (reponse == 'O' || reponse == 'o') RechargeCarte(num_adherant,Tab_numero_carte_adherent, Tab_Etat_carte, Tab_credit_carte, nbAdherents);
else return 1;
scanf("%*c");
verif = Tab_credit_carte[num_adherant] - Tab_tarif_activite[activite];
verif = Tab_credit_carte[position_adherent] - Tab_tarif_activite[position_activite-1];
}
Tab_credit_carte[num_adherant] = verif;
Tab_credit_carte[position_adherent] = verif;
printf("\n L'activite %s a bien ete realise !\n l'adherent numero %d possede encore %d credit. \n", Tab_nom_activite[position_activite-1], Tab_numero_carte_adherent[position_adherent], Tab_credit_carte[position_adherent]);
Tab_nb_activite_adherent[position_adherent]= Tab_nb_activite_adherent[position_adherent] +1;
Tab_nbr_entree_activite[position_activite] = Tab_nbr_entree_activite[position_activite] +1 ;
printf("\n Souhaitez-vous faire une activite a nouveau ? \n");
printf( " -------------------------------------------\n");
@ -160,16 +610,16 @@ int effectuer_activite( int Tab_credit_carte[], int Tab_tarif_activite[], int nu
}
if (reponse == 'O' || reponse =='o') return 0;
else return 1;
if (reponse == 'N' || reponse == 'n' ) return 2;
}
int verif_adherent(int num_adherant, int Tab_Presence_adherent[], int nbAdherents, int Tab_numero_carte_adherent[])
int verif_adherent(int num_adherant, int Tab_Presence_adherent[], int nbAdherents, int Tab_numero_carte_adherent[], int Tab_nb_activite_adherent[100])
{
int i = 0, verif = 6 ;
int i = 0, verif = 6 , position = 0;
i = TrouverAdherent(Tab_numero_carte_adherent, nbAdherents, num_adherant, &verif);
position = TrouverAdherent(Tab_numero_carte_adherent, nbAdherents, num_adherant, &verif);
if (verif != 1) return 2;
@ -177,7 +627,24 @@ int verif_adherent(int num_adherant, int Tab_Presence_adherent[], int nbAdherent
for (i = 0; i <100; i ++)
{
if (Tab_Presence_adherent[i] == num_adherant) return 1;
}
}
if ( Tab_nb_activite_adherent[position] >= 3) return 4;
return 0;
}
int verif_activite(int Tab_numero_activite[],int activite, int nbActivite)
{
for (int i = 0; i <nbActivite; i ++ )
{
if (Tab_numero_activite[i] == activite) return i+1;
}
return -1;
}

@ -1,4 +1,4 @@
#include "../header/adherent.h"
#include "../header/adherent.h"
/**
* @brief Affiche le message d'aide demandé
@ -333,7 +333,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi
{
clean
printf("Numero carte d'adherent a recharger : ");
scanf(" %d", &noCarte);
scanf(" %d%*c", &noCarte);
indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve);
}
@ -377,7 +377,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi
{
clean
printf("Numero carte d'adherent a recharger : ");
scanf(" %d", &noCarte);
scanf(" %d%*c", &noCarte);
indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve);
}
@ -389,7 +389,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi
// Récupération du nombre de crédit à ajouter
clean
printf("Combien souhaitez-vous ajouter de credit : ");
scanf(" %d", &credit);
scanf(" %d%*c", &credit);
// Vérification de l'état de la carte
@ -399,7 +399,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi
tabPointCarte[indice] += credit;
AfficheInfosAdherent(noCarte, tabNoCarte, tabEtatCarte, tabPointCarte, nbAdherents);
Bonus(indice, tabPointCarte);
Bonus(indice, tabPointCarte);
printf("\nTransaction de %d credits faite.\n", credit);
printf("Souhaitez-vous faire une nouvelle transaction de credit (O/N) : ");
@ -417,7 +417,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi
{
clean
printf("Numero carte d'adherent a recharger : ");
scanf(" %d", &noCarte);
scanf(" %d%*c", &noCarte);
indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve);
}

@ -25,12 +25,34 @@ int chargement_tableaux_adherent(int Tab_numero_carte_adherent[], int Tab_Etat_c
return i-1;
}
int chargement_tableaux_activite(int Tab_numero_activite[], int Tab_tarif_activite[])
void dechargement_adherent(int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[])
{
FILE * flot;
flot = fopen("../donnees/adherent.don", "w");
if (flot == NULL)
{
printf("\n Erreur enrgistrement dans fichier adherent.don\n");
return;
}
for (int i = 0; i < 100; i ++)
{
if (Tab_numero_carte_adherent[i] != 0) fprintf(flot, "%d \t %d \t %d \n", Tab_numero_carte_adherent[i], Tab_Etat_carte[i], Tab_credit_carte[i]);
}
fclose (flot);
}
int chargement_tableaux_activite(int Tab_numero_activite[], int Tab_tarif_activite[], char Tab_nom_activite[100][20])
{
FILE * flot;
int i = 0;
flot = fopen("../texte/activite.don", "r");
flot = fopen("../donnees/activite.don", "r");
if ( flot == NULL)
{
@ -42,9 +64,31 @@ int chargement_tableaux_activite(int Tab_numero_activite[], int Tab_tarif_activi
{
fscanf(flot,"%d", &Tab_numero_activite[i]);
fscanf(flot, "%d", &Tab_tarif_activite[i]);
fscanf(flot, "%s", &Tab_nom_activite[i]);
i = i +1;
}
fclose(flot);
return i-1;
return i;
}
void dechargement_activite( int Tab_numero_activite[], int Tab_tarif_activite[], char Tab_nom_activite[100][20])
{
FILE * flot;
flot = fopen("../donnees/activite.don", "w");
if ( flot == NULL)
{
printf("\n Erreur dans ouverture du fichier activite\n");
return ;
}
for (int i = 0; i < 100; i ++)
{
if ( Tab_numero_activite[i] != 0) fprintf( flot, "%d \t %d \t %s \n", Tab_numero_activite[i], Tab_tarif_activite[i], Tab_nom_activite[i] );
}
fclose (flot);
}

@ -165,7 +165,7 @@ void AfficheBandeauGCA(void)
/*======================================================================================================*/
void MenuActivite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents ) // Menu des activités
void MenuActivite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_nbr_entree_activite[],int Tab_numero_carte_adherent[], int Tab_Etat_carte[], int Tab_credit_carte[], int Tab_Presence_adherent[], int nbr_activite, int nbAdherents, int Tab_nom_activite[100][20] ) // Menu des activités
{
int choix = 0; //Variable qui récupère la volonté de l'utilisateur
system("cls");
@ -178,18 +178,17 @@ void MenuActivite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_
printf("- 4.) Supprimer une activite\n\n\n");
scanf("%d%*c",&choix); //On récupère le choix de l'utilisateur
while(choix < 1 || choix > 5 ) // Tant que le choix est inférieur à 1 ou supérieur à 4, on renvoie le menu
while(choix < 1 || choix > 4 ) // Tant que le choix est inférieur à 1 ou supérieur à 4, on renvoie le menu
{
system("cls");
clean;
printf("\n\nERREUR DANS LA SAISIE DU CHOIX ! \n\n - Veuillez choisir a nouveau\n----------------------------------------\n\n ");
printf("\n Menu des Activites\n");
printf(" ------------------\n\n"); //On affiche le menu
printf("\n- 1.) Afficher le nombre d'entree par activite dans la journee\n");
printf("- 2.) Afficher toutes les activites\n");
printf("- 3.) Creer / modifier une activite\n");
printf("- 4.) Supprimer une activite\n\n\n");
printf("- 1.) Afficher toutes les activites\n");
printf("- 2.) Creer / modifier une activite\n");
printf("- 3.) Supprimer une activite\n\n\n");
scanf("%d%*c",&choix); //On récupère le choix de l'utilisateur à nouveau
clean; // Commande pour vider le terminal sous windows
@ -197,19 +196,21 @@ void MenuActivite(int Tab_numero_activite[], int Tab_tarif_activite[],int Tab_
switch (choix)
{
case 1 : Affichage_entree(); // Affiche le nombre d'entrées par activités dans la journée
break;
case 1 :
printf("====================================================================================\n");
printf(" Affichage des activites \n");
printf("====================================================================================\n");
case 2 : Affichage_activite(); // Affiche toutes les activités
break;
case 3 : ; // Pour créer ou modifier une activité
case 2 : ;
break;
case 4 : Supprimer_activite(); // Pour supprimer une activité
case 3 : ; // Pour créer ou modifier une activité
break;
case 5 : Gestion_activite( Tab_numero_activite, Tab_tarif_activite, Tab_nbr_entree_activite, Tab_numero_carte_adherent, Tab_Etat_carte, Tab_credit_carte, Tab_Presence_adherent, nbr_activite, nbAdherents );
}
}
@ -221,26 +222,32 @@ void MenuGlobal(void)
{
int actif = 1, choix;
int trash;
int tabNoCarte[100], tabEtatCarte[100], tabPoint[100];
int tabNoCarte[100] = {0}, tabEtatCarte[100] = {0}, tabPoint[100] = {0};
int Tab_nb_activite_adherent[100] = {0};
int nbAdherents = chargement_tableaux_adherent(tabNoCarte, tabEtatCarte, tabPoint); // Chargement des adhérents
int tabNoAct[100], tabPrixAct[100];
int nbActivite = chargement_tableaux_activite(tabNoAct, tabPrixAct); // Chargement des activités
int Tab_nbr_entree_activite[100] ={0};
char Tab_nom_activite[100][20];
int tabNoAct[100] ={0}, tabPrixAct[100] ={0};
int nbActivite = chargement_tableaux_activite(tabNoAct, tabPrixAct, Tab_nom_activite); // Chargement des activités
int tabEntree[100] = {0}, tabPresence[100] = {0};
int taillePhysique = 100;
// Gestion de problème de fichier
if (nbAdherents == -1 || nbActivite == -1)
/* if (nbAdherents == -1 || nbActivite == -1)
{
clean
AfficheBandeauMP();
printf("\nUne erreur est survenue : fichier introuvable.\nMerci de verifier la validite de votre fichier adherent.don et votre fichier activite.don dans le dossier donnees\n");
}
}
else
{
{*/
while(actif)
{
clean
@ -256,11 +263,16 @@ void MenuGlobal(void)
break;
case 1 : GestionAdherent(tabNoCarte, tabEtatCarte, tabPoint, &nbAdherents, taillePhysique); break;
case 2 : GestionCompteAdherent(tabNoCarte, tabEtatCarte, tabPoint, nbAdherents); break;
case 3 : MenuActivite(tabNoAct, tabPrixAct, tabEntree, tabNoCarte, tabEtatCarte, tabPoint, tabPresence, nbActivite, nbAdherents); break;
case 4 : Gestion_activite(tabNoAct, tabPrixAct, tabEntree, tabNoCarte, tabEtatCarte, tabPoint, tabPresence, nbActivite, nbAdherents); break;
case 3 : modif_crea_activite(tabNoAct, Tab_nom_activite, tabPrixAct, Tab_nbr_entree_activite, nbActivite); break;
case 4 : Gestion_activite(tabNoAct, tabPrixAct, tabEntree, tabNoCarte, tabEtatCarte, tabPoint, tabPresence, nbActivite, nbAdherents, Tab_nom_activite, Tab_nb_activite_adherent); break;
}
}
}
// }
dechargement_adherent( tabNoCarte, tabEtatCarte, tabPoint);
dechargement_activite( tabNoAct, tabPrixAct, Tab_nom_activite);
}
/**

Loading…
Cancel
Save