#include "Fonctions.h" int RechercheAjoutAdherent(int tNoCarte[], int nbElem, int noCarte) { int i; while(i < nbElem) { if(tNoCarte[i] != i + 1) { return i; } i++; } } int AjoutAdherent(int tNoCarte[], int tAge[], int tPointsCarte[], int tCarteActive[], int tMax, int nbElem) { int noCarte, age, pointsCarte, 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 = RechercheAjoutAdherent(tNoCarte, nbElem, noCarte); 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; 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.\nIl est nécessaire de créditer la carte.\n", tNoCarte[pas], tAge[pas]); AjoutPoints(tNoCarte, tPointsCarte, tCarteActive, nbElem, tNoCarte[pas]); 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 avec le numéro de carte %d. Son nouvel âge est de %d ans.\n", noCarte, age); } else { printf("Ce numéro d'adhérent n'existe pas. Veuillez réessayer.\n"); return; } } int SupprimerAdherent(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, choix, choixRaison; 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("\nQue voulez-vous faire ?\n1.\tActiver la carte\n2.\tDésactiver la carte\n"); printf("\nOption choisie :"); scanf("%d", &choix); if (choix == 1) { printf("\nPourquoi voulez-vous activer la carte ?\n1.\tCarte retrouvée\n2.\tNouvelle carte\n3.\tLevée de sanction\n"); printf("\nOption choisie : "); scanf("%d", &choixRaison); if (tCarteActive[pas] == 1) { printf("La carte est déjà activée.\n"); return; } tCarteActive[pas] = 1; printf("La carte numéro %d est désormais activée.\n", noCarte); } else if (choix == 2) { printf("\nPourquoi voulez-vous désactiver la carte ?\n1.\tPerte\n2.\tVol\n3.\tSanction\n"); printf("\nOption choisie : "); scanf("%d", &choixRaison); if (tCarteActive[pas] == 0) { printf("La carte est déjà désactivée.\n"); return; } tCarteActive[pas] = 0; printf("La carte numéro %d est désormais désactivée.\n", noCarte); } } else { printf("Ce numéro d'adhérent n'existe pas. Veuillez réessayer.\n"); return; } }