From c4a9c668997ccb92485eebee7197ae410e09aff4 Mon Sep 17 00:00:00 2001 From: DahmaneYanis Date: Sun, 6 Nov 2022 21:16:55 +0100 Subject: [PATCH] =?UTF-8?q?Recharger=20carte=20compl=C3=A8tement=20fini?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- exe.exe | Bin 47227 -> 49787 bytes source/adherent.c | 127 +++++++++++++++++++++++++++++++++++++++------- source/main.c | 2 +- 3 files changed, 111 insertions(+), 18 deletions(-) diff --git a/exe.exe b/exe.exe index dee8427d6ef3e99c902d090daf50b5a11873a534..a697aeea6444cea6dda6dc7a7be92c05eb4bb8f4 100644 GIT binary patch delta 5919 zcmbVQ4OG+R8h`ilH9llRMj~I1HBnJ<7!a}@?&Ry5A|NS}b=3tU*hR3hnRQfDT!|AK zKIQfJiHerh@uKVaksjk*G}B6{TelC*sLZpJTjV7p?YjHC?|)-#bn0|>&h~%a=lMNf zzvunG|7~~s=-qXGw)HWiqN*#1jgX&3g!GUgQK*Q>LLe;`Erc>UPE-Y}@Ut2Y z;HLpD;%6<~#?K9q;5SaR5eo2g6V&;=MWfY_;r}r0$^xr@dhEt5LYf9d=J(F!DgCih za?W2V#*3pN3oiSs==3ZY5l|5R^E7Tj195yl26O>&^wKnF42YrjX|O#Yp1x26Zv-UA zsaUvPe}{GyA$!CnTGH&VbmWdfuT7Dg0}~(Gj&b(LSEC-&S#wp){G7M0gy|Yk=h%WD z)~GNRMe6u64kKUdb377_mUYv>5Ev7Y7ePpKmtzj%n&Xs?FQ>tafjKmO8hje~)QsLt zUW%ntvhJ|Z7g>yvx*T@Fu&)-&U|mNtHM$FWar0YDIl-mel?hveRMeCS7lLAFNhVwm zs;ABeVZJy%d?169vIC)x-V9hPR)wz>R9AGUI+OvO;`qefsA|c-!Wu?yAAKAxwF2rR zhRV!bk%1MaMdWL3KYzfm>hz#PpuydP~O%)ls!$pC|IhQ?@Z-IbTidYf_#n1H>W~VSQ*_n6)uM<6ITkBVm(@(MA>IL*;7G2 z;!jcW+~OvAEd$?31=ENMx<3^@9Wf?pMJkpahBQn@`W$t*YRc~yHLdK=T-A+QEAuEx zg@o{I`iTk_h9^*x3ai4S!>_A&mAtYGDrgTcq8n7uAFhk~VhZcb!RB!eW8vl7QZa0h zCN!FzPG@s|pEcis8`{!~mZp_`PKo6!l&tw;*S>j|7=mT!Sjf(fscI zU2KNASsN4RN{%5CTZDL=w(}^r433x6wq-Kk5TlSK+z{Ws8{l!x50|-FyTqgIT?9Tem24DDEoA3N0n!SD+Ms0;ECbjXHn(TjIj5IPB2S| z!6&$k$8d8b?Al~L!82GXo8Z&bGr=WHc1`f|1V)2ZLrG*FpF>qCBU@OI|+X zYtZKks(d;=h$=~r_kk!J8#t0baOd#DjSdVWyb$BN3D*u!KLS-A!ap9*!JP2O;ou%L z{}$m&cFVjV#NdQ?qwI6Q?1X0Nn8pMwl=1yf++OZG<{XnT ziv=*RI&U~Q0#!a$tKDa0uq*k^B6sFf<9HRk`~j4G%0D}f?H5(SPrQD7921G99T&Fq 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 diff --git a/source/adherent.c b/source/adherent.c index 305ee24..4060b4b 100644 --- a/source/adherent.c +++ b/source/adherent.c @@ -311,7 +311,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi // Si l'adhérent cherché n'existe pas if (!trouve && indice == -1) { - printf("Souhaitez-vous rechercher un autre adherent (O/N) : ", noCarte); + printf("Carte adherente introuvable. Souhaitez-vous rechercher un autre adherent (O/N) : ", noCarte); scanf(" %c", &rep); while (rep != 'N' && rep != 'O') @@ -346,7 +346,7 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi AfficheInfosAdherent(noCarte, tabNoCarte, tabEtatCarte, tabPointCarte, nbAdherents); printf("\nVoulez-vous toujours recharger la carte numero %d (O/N) : ", noCarte); - scanf(" %c", rep); + scanf(" %c", &rep); while (rep != 'N' && rep != 'O') { @@ -357,8 +357,33 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi // Annulation de la recharge if (rep == 'N') - actif = 0; + { + clean + printf("Transaction annulee.\nSouhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); + + while (rep != 'N' && rep != 'O') + { + clean + printf("Reponse incorrecte. Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); + } + + // Fin de programme + if (rep == 'N') + actif = 0; + // Relancment du programme avec une nouvelle carte adhérente + else + { + clean + printf("Numero carte d'adherent a recharger : "); + scanf(" %d", &noCarte); + + indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve); + } + } + // Validation de la volonté de recharger else { @@ -368,7 +393,41 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi scanf(" %d", &credit); // Vérification de l'état de la carte - if (tabEtatCarte[indice] != 1) + + // Si la carte est activée + if (tabEtatCarte[indice] == 1) + { + tabPointCarte[indice] += credit; + AfficheInfosAdherent(noCarte, tabNoCarte, tabEtatCarte, tabPointCarte, nbAdherents); + + printf("\nTransaction de %d credits faite.\n", credit); + printf("Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); + + while (rep != 'N' && rep != 'O') + { + clean + printf("Reponse incorrecte. Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); + } + + // Nouveau rechargement de carte + if (rep == 'O') + { + clean + printf("Numero carte d'adherent a recharger : "); + scanf(" %d", &noCarte); + + indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve); + } + + // Fin de programme + else + actif = 0; + } + + // Si la carte est désactivée + else { clean printf("Etat de la carte actuel : %d", tabEtatCarte[indice]); @@ -388,13 +447,32 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi tabEtatCarte[indice] = 1; tabPointCarte[indice] += credit; clean - printf("Carte reactivee. Transaction de %d credits faite.\n", credit); AfficheInfosAdherent(noCarte, tabNoCarte, tabEtatCarte, tabPointCarte, nbAdherents); - printf("\nAppuyer sur entree pour continuer..."); - scanf("%*c%c", &trash); + printf("\nTransaction de %d credits faite.\n", credit); + printf("Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); - actif = 0; + while (rep != 'N' && rep != 'O') + { + clean + printf("Reponse incorrecte. Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); + } + + // Nouveau rechargement de carte + if (rep == 'O') + { + clean + printf("Numero carte d'adherent a recharger : "); + scanf(" %d", &noCarte); + + indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve); + } + + // Fin de programme + else + actif = 0; } // Etat de la carte non modifié @@ -415,21 +493,39 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi if (rep == 'O') { tabPointCarte[indice] += credit; - clean - printf("Transaction de %d credits faite.\n", credit); AfficheInfosAdherent(noCarte, tabNoCarte, tabEtatCarte, tabPointCarte, nbAdherents); - printf("\nAppuyer sur entree pour continuer..."); - scanf("%*c%c", &trash); + printf("\nTransaction de %d credits faite.\n", credit); + printf("Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); - actif = 0; + while (rep != 'N' && rep != 'O') + { + clean + printf("Reponse incorrecte. Souhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + scanf(" %c", &rep); + } + + // Nouveau rechargement de carte + if (rep == 'O') + { + clean + printf("Numero carte d'adherent a recharger : "); + scanf(" %d", &noCarte); + + indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve); + } + + // Fin de programme + else + actif = 0; } // Annulation de la transaction car carte annulée else { clean - printf("Transaction annulée.\nSouhaitez-vous faire une nouvelle transaction de credit (O/N) : "); + printf("Transaction annulee.\nSouhaitez-vous faire une nouvelle transaction de credit (O/N) : "); scanf(" %c", &rep); while (rep != 'N' && rep != 'O') @@ -453,11 +549,8 @@ void RechargeCarte(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPoi indice = TrouverAdherent(tabNoCarte, nbAdherents, noCarte, &trouve); } } - } - } - } } } diff --git a/source/main.c b/source/main.c index deda07b..92c0da3 100644 --- a/source/main.c +++ b/source/main.c @@ -5,7 +5,7 @@ int main(void){ color int tabCarte[15] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; - int tabEtat[15] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; + int tabEtat[15] = {1, 1, 1, 1, 1, 1, -2, 1, 1, 1, 1, 1, 1, 1, 1}; int tabPoint[15] = {0}; int taillePhysique = 15;