From 2fc8dcaa71ca2c6738cc7010afb338a3584b4e11 Mon Sep 17 00:00:00 2001 From: DahmaneYanis Date: Sun, 6 Nov 2022 17:15:17 +0100 Subject: [PATCH] =?UTF-8?q?Afficher=20les=20infos=20d'un=20adh=C3=A9rent?= =?UTF-8?q?=20op=C3=A9rationnel=20->=20A=20commenter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- exe.exe | Bin 45583 -> 46647 bytes header/adherent.h | 6 ++-- source/adherent.c | 72 ++++++++++++++++++++++++++++++++++------------ source/main.c | 3 +- 4 files changed, 59 insertions(+), 22 deletions(-) diff --git a/exe.exe b/exe.exe index 9f6ef18ca057fa9f98c620660f81b7cad9885715..740f9f1b1c304d0b78522572b631d2fdf267817d 100644 GIT binary patch delta 7022 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 delta 6539 zcmaKw4^&jgy~pR?-DOu;*foM85n`G=CWsW5YTD>x zfGPzPo%B37ngorf`Vu9`Cd4KlLkmTdrU`A57ZPYf8vDA5){@lneEGNU`@479W$HP- z=j_hh&wPKs`OR=yEy&0dS{O8jAd6}q9x@^qan^C=`)LqKhkRA2jx$# zyh(fatg}|e>TXFjzrUPo(IRSgS!<#0eB8>1wN|;*$|H68Q8OV!3mTa3+ZbM|iP-CC(N6?=rz@!SI5Pi@YLsfCqrp?wgO?$sHYKzxylWV0|e&<;H3=S zrnkyZX7D%kadK4#{~!HMIWdE;H{2N&yHH8WaY%i}h5QMFb@j;w3K}T|dJFZ>W@-TP zZc^ed=Zz_a)?(g_=GV~Nk~cz$KxQ`(YF4e^BkPg{{5wN#R82)wP~+UptHR^#*XBd7 zXh!ENz4eoAyy9*+;O-)!&(Lh@$s5ipG}X6bZk2jb&96Ue#?6F}vV-Z*oYV;_lyu6n?w6_hDn|$)cpV4S|GosY$9y zoEU2pM3?if2OftGyNlK3}aO0ZcZ$$;c?y`>pkNk_fK(~7!`5Ac&Hu)wL>hC-`WkE773)eaQ! zMuJl)^lJ4C3WHibi(-me?LrZ*R$oLBp;j-TFsjvyC?Xj>boG{A)Ugv#wI79vs<{@s z5@W7qU7#$H_>if>*|N?OO@7#~NZ0uOKc0u#o2V*g^_DAvYLi;UGh}SZwM3&dptRF7 z)uQHr_NJn5{C>q-)821h?<;RDZ}kqEC5?RTAKrJSeJW)RX4_cZ*M9fxhGDnSAN`ba ze@&{niL^VDkW<%}et%tm?1sL@!`I}-zLp%RDY{`W+j}EsmquRg@|MkvmONW1`@P@! z{UWngN^kuWE9ea8J?4{hcCxV*SG z5e@Pi4c+cu$d8mg+t;v_idU)}gbUFHE{=}LL+5H;t zMzOS)|9Q>Ba%L~Tx3E|@+UNJb&Hq$5i@#WCkt_Q7hlPdmoBce!C|fQV;FU$mvU`9Z zElQW$2Kc3-4Ef3czflw?j|}i|`&#+n74IhdNr|^=EZu9h2EBc@jj`D_%-;V=UhPJs zEL&5(cWnAj(pyt)?BP@!KVO^3@2QROu5dmdKb4-K*ty6;glURSGm=e)8mW6t`xb1*8A`2TBEf0;9a%6VQv=LO}VL?knBhgl-<&KsZ zX%}xfkRltydFR382qQK!)oTa;_&{ky7JREdroe~d)+x9RBe(q$H@C;pcF3l~x{IGb zkTSOm8=>mz8F-)_OT3cMXg5)>GK#py?6A8*oMw=?BUWvC0q$DO6T@~m96L(4SF+I{ z2`0kKpKB~n-$3rBPROaNN|4bYnUJ%oeEHAEvwlkQJ0{ENq%kUxS3qiUd=nEtHkDU2 zWyijaMkfx4Vq;P?A85*#SL=9GbF$RH7dI!$pG$mgbFw@x@gIX}d3$qegmng4(nO^5 zb8Rz^9uDU>nwLvvKCdN3O5|%=Ql$i5(~_dwNJ1_hh~=-f=>szJ=P*4DYkKQwq>^~< zY>p=Xa}OoM#mYk|=w-*DRLRNz-Y^Tf3|oMW#5qIBHHwc8Wv4F#Vc6}|@KI;EAY(x? zk*>iReAVG(`Ie4X9!>}=hQ^+z&RH7oIh>De@7u$Po~_`6c)^9d?Ez_BG?_Glj0)r! zh!tB}$f}d91o9e4Z;(txWnVy6H26=joa4O5T94_aO#Z#L#PmTJL?bcEGN*B|k3nKl zqEOZ{W7o;)5? zpl9;48{}Zn50OR>P`@B*Cl9!&Yqk3`AbSL}mqA7pLK;VTwF_GdyCMWMKvsh1k3lX9 z@1iLz;&aje2}k2lMD{WbbXHh3`F{;&}@E$>4~nuk#?=g7MRG+6CGwjPcjdvA*>GOF4BGt8HS6OLgIW}=2M_-agn9FcH zfMp1iJ(65$nA1h<0x0LO$ewO8v4(&Ip># z&?E&@Nug94?#5=1N+`xUh{QE<0%VWi=q#Vpk>a@oP8SvGN__*>HX+atK(s=aJ`g(A zl7(vZPmox_N{f?FYmhkHIJ@t5RojCx;4HJJf?w`PnKKp2K}9*?EfJ(Es6;1h9ygsx z@!SJmg}cz|&jU#k$O9m^f=NUZ+XO-vEeSQ+N)S4lhy46R(9jCqQd7k)gyMIUR&Sm6 zV{$XutQlsZ&>dx^6%{+n*x+LR;fVy#v4GFe6W$4ORfz2(h*8Mx8z8m8eyO`*@&irC z&kc}mK|hXam(uS+A!9}l-v1*(5jlzjq2Io=KdXtz2%Hf@u5&!N*UUJ#I8?3>rIj;UHgH!K#9h;ykOQ>_U*h13Lt(&?}nAageh? zKSa)g&=m^(V~`FZtpBAPj0vt~`ey=ZC27}{ply2TxjRVt=5aQGPo>M6vFO;o8B?Wy2Bnjn&N5b zL2xXbw6bL*HWeW&i69n1vk2r}!Owr(0aPU*C;uD5dJG(RQYMao&=tz)Nf5J;oAV$O zt4>{c7ePjaVGn@#gdX1onfQ&MT7BXHqARr5jf04LogtF3Q-Y)EAasR7Tmq6SX!35; z{1Alxod|5l*b^#To=WBvqTT^fhv29V#EQ;Bo69jG!W29QB0f{EgA@pwPe9fQp1+D@ z9##=Vj;iYImF{xZAp~T`A8X$PH8kqkAYz7cK-M9?P!=BoDFC5GuBN&ggr+RC+V+Ax uC_X7IWESk+vFov2Zr2W05+v09e?pTb1oRTfP>}R_9jB*D-lj8WBmW-`TN6|O diff --git a/header/adherent.h b/header/adherent.h index 4418461..741e25b 100644 --- a/header/adherent.h +++ b/header/adherent.h @@ -1,9 +1,9 @@ #include "global.h" void help(int page); -void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[]); +void SupprimerAdherent(int *nbAdherents, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[]); -void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int tailleLog); +void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int nbAdherents); void ligne(void); - +int AfficheInfosAdherent(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int nbAdherents); diff --git a/source/adherent.c b/source/adherent.c index 1b78be4..0fc639b 100644 --- a/source/adherent.c +++ b/source/adherent.c @@ -17,12 +17,12 @@ void help(int page){ /** * @brief Supprime un adherent * - * @param nbAdherent [POINTEUR] Nombre d'adhérent total + * @param nbAdherents [POINTEUR - Taille Logique] Nombre d'adhérents total * @param tabNoCarte [TABLEAU] Liste des numéros de cartes des adhérents * @param tabEtatCarte [TABLEAU] Liste des états des cartes des adhérents * @param tabPointCarte [TABLEAU] Liste des points sur les cartes des adhérents */ -void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[]) +void SupprimerAdherent(int *nbAdherents, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[]) { int cible, boucle = 0; char rep; @@ -47,7 +47,7 @@ void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], in // Verification de l'existance de l'adherent - for (int i = 0; i < *nbAdherent ; i++) + for (int i = 0; i < *nbAdherents ; i++) { if (tabNoCarte[i] == cible) { @@ -73,7 +73,7 @@ void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], in if (rep == 'O') { - AfficheAdherents(tabNoCarte, tabEtatCarte, tabPointCarte, *nbAdherent); + AfficheAdherents(tabNoCarte, tabEtatCarte, tabPointCarte, *nbAdherents); } } @@ -95,7 +95,7 @@ void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], in // Suppression de l'adherent if (rep == 'O') { - for (int i = indice; i < *nbAdherent ; i++) + for (int i = indice; i < *nbAdherents ; i++) { tabNoCarte[i] = tabNoCarte[i+1]; tabEtatCarte[i] = tabEtatCarte[i+1]; @@ -105,7 +105,7 @@ void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], in clean printf("Adherent supprime.\n"); - *nbAdherent -= 1; + *nbAdherents -= 1; } // Suppression annulée @@ -124,7 +124,7 @@ void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], in while (rep != 'N' && rep != 'O') { clean - printf("Reponse incorrecte. Confirmez vous la suppression de l'adherent %d (O/N) : ", tabNoCarte[indice]); + printf("Reponse incorrecte. Souhaitez vous entrer un autre numero d'adherent (O/N) : "); scanf("%*c%c", &rep); } @@ -143,21 +143,21 @@ void SupprimerAdherent(int *nbAdherent, int tabNoCarte[], int tabEtatCarte[], in * @param tabNoCarte [TABLEAU] Liste des cartes des adhérents * @param tabEtatCarte [TABLEAU] Liste des états des cartes des adhérents * @param tabPointCarte [TABLEAU] Liste des points des adhérents - * @param tailleLog Nombre d'adhérents + * @param nbAdherents [TAILLE LOGIQUE] Nombre d'adhérents */ -void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int tailleLog) +void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int nbAdherents) { int commande, actif = 1; - int nbPages = tailleLog/10 + 1, noPage = 1; + int nbPages = nbAdherents/10 + 1, noPage = 1; char trash; //Détermine les adhérents à afficher au début int min = 0, max; - if (tailleLog>= 10) + if (nbAdherents>= 10) max = 9; else - max = tailleLog; + max = nbAdherents; // Boucle d'affichage while (actif) @@ -171,7 +171,7 @@ void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], for (int i = min; i < max; i++) { ligne(); - printf("\t| %15d | %10d | %18d |\n", tabNoCarte[i], tabEtatCarte[i], tabPointCarte[i]); + printf("\t| %15d | %16d | %18d |\n", tabNoCarte[i], tabEtatCarte[i], tabPointCarte[i]); } @@ -201,8 +201,8 @@ void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], //Détermine la page (et son contenu) à afficher min = (noPage-1)*10; - if (noPage*10 > tailleLog) - max = tailleLog; + if (noPage*10 > nbAdherents) + max = nbAdherents; else max = noPage*10; } @@ -215,13 +215,49 @@ void AfficheAdherents(int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], void ligne(void) { printf("\t|"); - for (int i = 0; i < 51; i++) + for (int i = 0; i < 57; i++) { - if(i == 17 || i == 30) + if(i == 17 || i == 36) printf("|"); else - printf("-"); + printf("-"); } printf("|\n"); } + + +int AfficheInfosAdherent(int noCarte, int tabNoCarte[], int tabEtatCarte[], int tabPointCarte[], int nbAdherents) +{ + int indice = 0, trouve = 0; + + // Vérifier l'existance du numéro de carte et si existe récupération de son indice + for (int i = 0; i < nbAdherents; i++) + { + if (tabNoCarte[i] == noCarte) + { + indice = i; + trouve = 1; + } + } + + // Affichage + clean + + // Traitement du résultat de la recherche + if (!trouve) + { + printf("Adherent %d introuvable.\n", noCarte); + + return -1; + } + else + { + printf("Information de l'adherent %d : \n", noCarte); + printf("\n\t| NUMERO ADHERENT | ETAT DE LA CARTE | CREDIT DE LA CARTE |\n"); + ligne(); + printf("\t| %15d | %16d | %18d |\n", tabNoCarte[indice], tabEtatCarte[indice], tabPointCarte[indice]); + + return 0; + } +} \ No newline at end of file diff --git a/source/main.c b/source/main.c index fe5ce6b..c84c016 100644 --- a/source/main.c +++ b/source/main.c @@ -11,7 +11,8 @@ int main(void){ int taillePhysique = 15; int tailleLog = 15; + int err = AfficheInfosAdherent(15, tabCarte, tabEtat, tabPoint, tailleLog); //SupprimerAdherent(&tailleLog, tabCarte, tabEtat, tabPoint); - AfficheAdherents(tabCarte, tabEtat, tabPoint, tailleLog); + //AfficheAdherents(tabCarte, tabEtat, tabPoint, tailleLog); } \ No newline at end of file