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.
132 lines
3.8 KiB
132 lines
3.8 KiB
#include "Fonctions.h"
|
|
|
|
int rechercheAdherent(int tNoCarte[], int nbelem, int NoCarte, int *trouve)
|
|
{
|
|
int i;
|
|
for(i = 0; i < nbelem; i++)
|
|
{
|
|
if(tNoCarte[i] == NoCarte)
|
|
{
|
|
*trouve = 1;
|
|
return i;
|
|
}
|
|
if(tNoCarte[i] > NoCarte)
|
|
{
|
|
*trouve = 0;
|
|
return i + 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
int AjoutAdherent(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tmax, int nbelem)
|
|
{
|
|
int NoCarte, age, pointsCarte, CarteActive, pas, trouve, j;
|
|
char reponse;
|
|
printf("Vous voulez créer un nouvel adhérent.\n");
|
|
printf("Donnez l'âge de l'adhérent : ");
|
|
scanf("%d", &age);
|
|
pas = rechercheAdherent(tNoCarte, nbelem, NoCarte, &trouve);
|
|
printf("%d\n", pas);
|
|
for(j=nbelem; j> pas; j--)
|
|
{
|
|
if(j == tmax)
|
|
{
|
|
printf("Tableau plein, impossible d'ajouter un adhérent.\n");
|
|
return -1;
|
|
}
|
|
tNoCarte[j] = tNoCarte[j-1];
|
|
tage[j] = tage[j-1];
|
|
tPointsCarte[j] = tPointsCarte[j-1];
|
|
tCarteActive[j] = tCarteActive[j-1];
|
|
}
|
|
tNoCarte[pas] = pas + 1;
|
|
printf("%d\n", tNoCarte[pas]);
|
|
tage[pas] = age;
|
|
tPointsCarte[pas] = 0;
|
|
tCarteActive[pas] = 0;
|
|
nbelem++;
|
|
printf("Vous avez créé l'adhérent numéro %d. Il a %d ans.\nSa carte n'est pas active car il n'y a pas de points dessus.\nVoulez-vous en ajouter ? (o/n)\n", tNoCarte[pas], tage[pas]);
|
|
scanf("%*c%c", &reponse);
|
|
if(reponse == 'O' || reponse == 'o')
|
|
{
|
|
AjoutPoints(tNoCarte, tPointsCarte, tCarteActive, nbelem);
|
|
}
|
|
else
|
|
{
|
|
printf("La carte n'est pas active.\n");
|
|
return nbelem;
|
|
}
|
|
return nbelem;
|
|
}
|
|
|
|
void ModificationAge(int tNoCarte[], int tage[], int nbelem)
|
|
{
|
|
int pas, NoCarte, age, trouve;
|
|
printf("Entrez le numéro de la carte de l'adhérent recherché : ");
|
|
scanf("%d",&NoCarte);
|
|
pas = rechercheAdherent(tNoCarte, nbelem, NoCarte, &trouve);
|
|
if(trouve == 1)
|
|
{
|
|
printf("Entrez le nouvel âge de l'adhérent : ");
|
|
scanf("%d",&age);
|
|
tage[pas] = age;
|
|
printf("Vous avez modifié l'âge de l'adhérent numéro %d. Son nouvel âge est %d.\n", NoCarte, age);
|
|
}
|
|
else
|
|
{
|
|
printf("Ce numéro d'adhérent n'existe pas. Veuillez réessayer.\n");
|
|
return;
|
|
}
|
|
}
|
|
|
|
int SupprimmerAdherent(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int nbelem)
|
|
{
|
|
int pas, i, NoCarte, trouve;
|
|
printf("Entrez le numéro de la carte de l'adhérent recherché : ");
|
|
scanf("%d",&NoCarte);
|
|
pas = rechercheAdherent(tNoCarte, nbelem, NoCarte, &trouve);
|
|
if(trouve == 1)
|
|
{
|
|
for(i = pas; i < nbelem; i++)
|
|
{
|
|
tNoCarte[i] = tNoCarte[i+1];
|
|
tage[i] = tage[i+1];
|
|
tPointsCarte[i] = tPointsCarte[i+1];
|
|
tCarteActive[i] = tCarteActive[i+1];
|
|
}
|
|
nbelem = nbelem - 1;
|
|
printf("Vous avez bien supprimé l'adhérent numéro %d.\n", NoCarte);
|
|
return nbelem;
|
|
}
|
|
else
|
|
{
|
|
printf("Ce numéro d'adhérent n'existe pas. Veuillez réessayer.\n");
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
void ModificationActivationCarte(int tNoCarte[], int tCarteActive[], int nbelem)
|
|
{
|
|
int NoCarte, trouve, pas;
|
|
printf("Entrez le numéro de la carte de l'adhérent recherché : ");
|
|
scanf("%d",&NoCarte);
|
|
pas = rechercheAdherent(tNoCarte, nbelem, NoCarte, &trouve);
|
|
if(trouve == 1)
|
|
{
|
|
if(tCarteActive[pas] == 1)
|
|
{
|
|
tCarteActive[pas] = 0;
|
|
printf("La carte numéro %d est désormais désactivée.\n", NoCarte);
|
|
}
|
|
else
|
|
{
|
|
tCarteActive[pas] = 1;
|
|
printf("La carte numéro %d est désormais activée.\n", NoCarte);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
printf("Ce numéro d'adhérent n'existe pas. Veuillez réessayer.\n");
|
|
return;
|
|
}
|
|
} |