From 2f451844e2ff49b2a963ea0568d492a9eca2c1d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 14:35:53 +0100 Subject: [PATCH 1/8] resolved errors in client MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35008 -> 35312 bytes src/app/interface/interface_resp.c | 5 +++-- src/app/interface/interface_resp.h | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app b/app index 0458afb0ceb6a42609fa835a3d51c5eb9a70a1e2..f19f95c434a671bb4c0bc2380179c61aa95ecdc8 100755 GIT binary patch delta 7154 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 delta 4384 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 #include "interface_resp.h" #include "app/core_logic/responsable.h" +#include "app/core_logic/client.h" #define MAX_CLIENTS 100 #define MAX_ARTICLES 100 @@ -153,7 +154,7 @@ void affichSupprimerArticle(int *ref) printf("\t Quel est la référence de l'article voulez-vous supprimez\n"); while(scanf("%d", ref == 1 || *ref <= 0)) { - printf("\t Veuillez entrer une référence valide.") + printf("\t Veuillez entrer une référence valide."); while(getchar() != '\n'); } } @@ -226,7 +227,7 @@ void global_resp(){ int tSus[MAX_CLIENTS]; int tLogArticle = chargementArticles(tRef, tPoids, tVol, tPrix, MAX_ARTICLES); - //int tLogClient = charger_clients(tNumClient, tCagnotte, tSus, MAX_CLIENTS); + int tLogClient = charger_clients(tNumClient, tCagnotte, tSus, MAX_CLIENTS); menu_resp(&choix); switch (choix) { diff --git a/src/app/interface/interface_resp.h b/src/app/interface/interface_resp.h index 707d010..b793ad2 100644 --- a/src/app/interface/interface_resp.h +++ b/src/app/interface/interface_resp.h @@ -1,10 +1,10 @@ void affichArticles( int tRef[], float tPoids[], float tVol[], float tPrix[], int tLogique); -void affichUnArticle(int tRef[], float tPoids[], float tVol[], float tPrix[], int tLogique, int val); +void affichUnArticle(int tRef[], float tPoids[], float tVol[], float tPrix[], int tLogique); void affichUnClient(int tNumClient[], float tCagnotte[], int tSus[], int tLogique); void affichClients(int tNumClient[], float tCagnotte[], int tSus[], int tLogique); void affichAjoutArticle(int *ref, float *poids, float *volume, float *prix); void affichSupprimerArticle(int *ref); void affichModifierArticle(int *ref, float *poids, float *volume, float *prix); -void menu_resp(int *choix, int jour); +void menu_resp(int *choix); void global_resp(); void affiche_resp(void); \ No newline at end of file From 609a071d093990d207d5c677939045629b830f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 14:51:31 +0100 Subject: [PATCH 2/8] resolved errors with supprimer_article_du_panier MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35312 -> 35312 bytes src/app/core_logic/client.c | 3 ++- src/app/core_logic/client.h | 2 +- src/app/interface/interface_client.c | 5 +++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app b/app index f19f95c434a671bb4c0bc2380179c61aa95ecdc8..d6ecf8c9feb5a79b269007018343b51cb567551e 100755 GIT binary patch delta 2466 zcmZuz4^Wfm8GoMyNCH9#Nl4&JOdvu6YJnnxiV~$QwY8HC?Ydcph@PX;4y^8UJx36z z{YT~96X&1F35B(AIwu8B!l(SY+W*6D;9BhBhzZeL*>9dz#4km@((o3pP=x&Mm|BD8fg;0q3zy)Hj6cdG$+zSUulXl>fp<&UUvtX1Wwkojs;tpNStuMjnQ_BuA?}a+6!H{ z+u{O09<>z1^EheQ0XuM|)d6)_Z7qbyky|ZLg#*?y@J8`Ugft@*;nQgrxE~j%m4QRV zi*1zk%egs=m^r$aV-9X2TSzaR9r4^m?cQW=z(I&)UkdmU|Q?R*zp$M*St08DpWFto=of2^_zVGnP?zdPKp1rwchupXP7V$DO&a#(@a zon_#`w2WT(21hbnFo#na2jBy&&lKP?wr3uOH-_x4b1L{Z{yED95sYN5fKRa~y9_3A zclM)j9^cA72(ROJ-9pA|s^}R$!>%pl#|Z}urG4*Lt0u+0KZYIdmthyCd8(iWpY}W} z9v_bzN``bfMgZFK+zOb&ZMhC{HM#Dz_d!m$D4&ljctbva7vIS}VecVJ@Hy`Y8_k>_ zqN{;!(tFh2GwjCwocgfPrRAbWvv&l8c_w%X-&*Lhw}__J{}VK}g#Qd-kqeqIYf&Eh ztTCn0WJikl7K(}9FI6mh_eAYbdIP`kn47mQ<;$pyTTD%+P=Z`0 zK`N62-at+)Yl@~nN9k2k`hI#_r^$yjgZ6s;`2pgeCHMlKy}9T6)!)*HD_V3a6c?R} zSnC!-mT_p;;-Ff$_UpOBqJDa)x}ZD>8nLIWIHMtksXAjA(*U)gcf`)D!+<#CLwq1lEjA2Eqo8J4Mv}QD~vr50txzuny zt$f@l@#Qjq#Uk;wGA|V*zFFpN=@Q=~^CNUCQ5yE5%on6e{HV;8e**&&M}3=NHIr+; zC;RNllwxkmd^B6)Gcvb1B|eV|iF0nl+BS#5lq^|GW$PZ~ZI0R{ddd2vZ0)m4e7nq9 zmc;kSd@KD+A;>yp-jE^jZkgYe^*3ei95S>Is+(POJfa_{ZER#iPaXFS{NdiItZn}aV{bAK#HCJj5Jkk2(Z{ECc=UjZs zQs)Nk27O+i>xU`Tj|*3SH26pT?CV(hqR&~HbLsQWt!D%4E}ad;thu(_(YCqlPaVJd P!NiBJ{{H8ag~tB?0iemM delta 2481 zcmZuz0Z^0Y8UDV6kOYJzCLx%gkU)S0P{AUFS(I2*ipp%yTDwtCg>uR&4(;s990EdX zSy|!p4JWoo2|}+}-3Fx=;>r~jH}q^T?zTJF>FsB|cCpHYtF@#%#@;{w|F7F_xyzU5 zd7t-t-|ze0H{buyf?^gF?E!-~mJmt^;gfN|k9TnTzCvHHX^-cn-(-)U8794Pm3Oj+ zcx8JO_##rECN`n|cN*eF*IDwKn(;~!x-9d6nthCzS9(ID!mrvB`mL;)G>nfXp<$W3 zwd?~K2efQZ#{E(3*D~H8&CbaV%R&fFd4(nAm*bzAs?jbawxzLbR2Di zBf1JjwFW-r;$T)69T^}4v8)QHetY_yl6XJM^Z5DQ#LxFy*>r`8{nZ)EHmWdA8S&%h z0;E94Hbb4B+qg;06d+sm%p+v7dqQ`VgawNzb5jypC+pb;mXA2B<%n81QeP~~h1>cQ zDm|*(pvvGv=^=|wVMZU z{{Mb`u&|V?@52D$;6iEDB;=DhmbMGAP|~-AUp(#8vWBJgHQDDoWR9ghDdPqcYm>3t z%vxnUVP-8dJ`l%V6>(aC=q;>C7Cx}B1{psc&*~8Sns(10g;8T3t%k3S^|Ta@n6}V0 zaLKfdrh~!EMcL6y*uO;`F8x-skKTtFvy*-ShPXUB2_w(s z9k9dVq^(eE$)m?$(DDMU09(ABmciQi9Qu7Y6mOwhpe4SL=7(`EOvfAP3MgG>p&1af ztdLp+yuyT0=N1<&LgesSPT1KJv;}oy-v~VuwtMtU3k>HygqzDO=C82W|26N1gWZJ% zj2;BDwUGWPjQ;@D)+~Ajx~$vjAk0}g?YlTn$kh#>a28n3t)?eoFUQe0ppGln)=KIj zRGsu7%%Solh)F2c?vRvH*p=X7stq3i#>Gwk?>aNAaa=e$1ANpC`BqL((pw}}@GbvQ>QpUkYA)xuS~i~bO1 z>=m>ao^l8)IpQdyIpB8`QU`<_z4QTeB{}Iga4G2oy#Xc39Q_z7lTXp^p@rmO1^qi* zNOjUVm`Z(&-U4%4A-x7W(zeh6=t*m%Z^J4Vm-MD0+}HzTGLv}`^EqNM`jv{C!m>|7 zwd-|y079xR(8%N&%N=vvCD06c9`&A4;ImBhIP_#XZMA}_>Hkcc zSj`T@bf%M5fogfyGvPp;xvUKRg=6pEPQrT#+wth1MZ1PHEDdtRzi1(Tp*eyUkN>Q4 z_k23VTY+j{2o85!pHPrIK?|490&CJaCwd99BGD?((x`|bh*7@8mJV_rKkzPd{qv8q zM=*;+h>W(NQOaWcE=#(K9Fj9l(ErGUKByTqQ&l5pv2ngMHu&AO86)9*sD<-kycx_V ztk^BA7-M0Tgo}BAbmp<4pRbryYM=VY;wfR)@X)SRMX}TiJ%xEm`y+^=HG+@`J)x}z zqUbl^lgdPt4Q4{N#uIveC{!4`KJs2RQIdNQ)0kjBpM~(&qd4^C;xLkq!#J#Kv_yMt z2;0kW@WGzOU6Gv|5%O@QF+cJn55hj6$JebJaUkqmONgT4Kvm_zpOCAH!<8@Akn0LG zm!meBh{O0}-#L6CI^0DEAJiRB(Ki>PM{5xd-Y0MvgTdo%YOiga@^l=En_M&iKW<8@ zKM*fItTXT&bhz_-MvgA{e)pii^Mm?iTt$0<(GrA zA_rZwVZB4j`HAGyi7yU9jN20D(?mWm@dAg)m!Old=04clY&YcVMQed%?F80r-}|gi zv_2OD*OD6ih}%-Ei2dZXWTD&XI4h@W#7D_$qoMWV#l@Yj`FL4!@uDs|k@MKGaV`|L(>03F8zo_WCc&zE44}7`j Ub_TxsbE!uAUP3DT?Oe{k0FKGgS^xk5 diff --git a/src/app/core_logic/client.c b/src/app/core_logic/client.c index 92a8936..43acd1e 100644 --- a/src/app/core_logic/client.c +++ b/src/app/core_logic/client.c @@ -107,7 +107,7 @@ void ajouter_article_au_panier(int numeroClient, int references[], float poids[] } } -void supprimer_article_du_panier(int panier[], int *taillePanier) { +void supprimer_article_du_panier(int panier[], int quantites[], int *taillePanier) { int reference; printf("Entrez la référence de l'article à supprimer : "); scanf("%d", &reference); @@ -127,6 +127,7 @@ void supprimer_article_du_panier(int panier[], int *taillePanier) { for (int i = articleIndex; i < (*taillePanier - 1); i++) { panier[i] = panier[i + 1]; + quantites[i] = quantites[i + 1]; } (*taillePanier)--; diff --git a/src/app/core_logic/client.h b/src/app/core_logic/client.h index aabe5c8..2597f40 100644 --- a/src/app/core_logic/client.h +++ b/src/app/core_logic/client.h @@ -12,7 +12,7 @@ int charger_clients(int numeros[], float cagnottes[], int suspendues[], int tPhy void ajouter_article_au_panier(int numeroClient, int references[], float poids[], float volume[], float prixUnitaire[], int numeros[], float cagnottes[], int suspendues[], int nombreArticles, int nombreClients, float volumeCoffre, float chargeMaximale, int panier[], int quantites[], int *taillePanier); -void supprimer_article_du_panier(int panier[], int *taillePanier); +void supprimer_article_du_panier(int panier[], int quantites[], int *taillePanier); void affiche_recap_panier(int panier[], int taillePanier, int references[], float poids[], float volume[], float prixUnitaire[], int quantites[]); #endif //SAE_101_CLIENT_H diff --git a/src/app/interface/interface_client.c b/src/app/interface/interface_client.c index 0e23ffa..332d9da 100644 --- a/src/app/interface/interface_client.c +++ b/src/app/interface/interface_client.c @@ -93,7 +93,7 @@ void global_client() { suspendus, nombreArticles, nombreClients, volumeCoffre, chargeMaximale, panier, quantites, &taillePanier); break; case 3: - supprimer_article_du_panier(panier, &taillePanier); + supprimer_article_du_panier(panier, quantites, &taillePanier); break; case 9: printf("Au revoir !\n"); @@ -103,4 +103,5 @@ void global_client() { break; } }while(choix != 9); -} \ No newline at end of file +} + From 667424af86d0209843ba5da06586638557d4aa19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 15:02:30 +0100 Subject: [PATCH 3/8] all functions for client works MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35312 -> 35456 bytes src/app/core_logic/client.c | 30 +++++++++++++++++++++++++++ src/app/core_logic/client.h | 2 ++ src/app/interface/interface_client.c | 8 ++++++- 4 files changed, 39 insertions(+), 1 deletion(-) diff --git a/app b/app index d6ecf8c9feb5a79b269007018343b51cb567551e..194b58c5913dd8c6188327ea75403b2a2208fbe3 100755 GIT binary patch delta 4283 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 diff --git a/src/app/core_logic/client.c b/src/app/core_logic/client.c index 43acd1e..18f937c 100644 --- a/src/app/core_logic/client.c +++ b/src/app/core_logic/client.c @@ -173,3 +173,33 @@ void affiche_recap_panier(int panier[], int taillePanier, int references[], floa printf("Charge Actuelle: %.2f kg\n", poidsTotal); } +void modifier_quantite_article_panier(int panier[], int quantites[], int *taillePanier) { + int reference, quantite; + printf("Entrez la référence de l'article à modifier : "); + scanf("%d", &reference); + + int articleIndex = -1; + for (int i = 0; i < *taillePanier; i++) { + if (panier[i] == reference) { + articleIndex = i; + break; + } + } + + if (articleIndex == -1) { + printf("Article non trouvé dans le panier. Veuillez entrer une référence valide.\n"); + return; + } + + printf("Entrez la nouvelle quantité : "); + scanf("%d", &quantite); + + quantites[articleIndex] = quantite; + + printf("Quantité modifiée avec succès.\n"); +} + +void reinitialiser_panier(int panier[], int quantites[], int *taillePanier) { + *taillePanier = 0; + printf("Panier réinitialisé avec succès.\n"); +} \ No newline at end of file diff --git a/src/app/core_logic/client.h b/src/app/core_logic/client.h index 2597f40..9653efd 100644 --- a/src/app/core_logic/client.h +++ b/src/app/core_logic/client.h @@ -15,4 +15,6 @@ void ajouter_article_au_panier(int numeroClient, int references[], float poids[] void supprimer_article_du_panier(int panier[], int quantites[], int *taillePanier); void affiche_recap_panier(int panier[], int taillePanier, int references[], float poids[], float volume[], float prixUnitaire[], int quantites[]); +void modifier_quantite_article_panier(int panier[], int quantites[], int *taillePanier); +void reinitialiser_panier(int panier[], int quantites[], int *taillePanier); #endif //SAE_101_CLIENT_H diff --git a/src/app/interface/interface_client.c b/src/app/interface/interface_client.c index 332d9da..1e83ca7 100644 --- a/src/app/interface/interface_client.c +++ b/src/app/interface/interface_client.c @@ -14,7 +14,7 @@ void affiche_client(int a) { printf("+-----------------------------------------------------------------+\n"); printf("|| Que voulez-vous faire ? \t \t \t \t \t || \n"); printf("||\t1 : Afficher le récapitulatif du panier. \t \t || \n"); - printf("||\t2 : Ajouter un article du panier. \t \t \t || \n"); + printf("||\t2 : Ajouter un article au panier. \t \t \t || \n"); printf("||\t3 : Supprimer un article du panier. \t \t \t || \n"); printf("||\t4 : Modifier la quantité d'un article du panier. \t || \n"); printf("||\t5 : Réinitialiser le panier. \t \t \t \t || \n"); @@ -95,6 +95,12 @@ void global_client() { case 3: supprimer_article_du_panier(panier, quantites, &taillePanier); break; + case 4: + modifier_quantite_article_panier(panier, quantites, &taillePanier); + break; + case 5: + reinitialiser_panier(panier, quantites, &taillePanier); + break; case 9: printf("Au revoir !\n"); return; From 6c3bd40993ccb9b5b251e7b58cf092d0b314962a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 15:25:25 +0100 Subject: [PATCH 4/8] added all the verifications MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35456 -> 35456 bytes src/app/core_logic/client.c | 37 ++++++++++++++++++++++----- src/app/interface/interface_client.c | 18 +++++++++---- 3 files changed, 43 insertions(+), 12 deletions(-) diff --git a/app b/app index 194b58c5913dd8c6188327ea75403b2a2208fbe3..393b16d9dec5c4ed198f67cff83faf159536c128 100755 GIT binary patch delta 4986 zcmZ`-3s_Wj7XROQFf%#>!($j29&<-vW_SpLm>{5xk*%*3A8V8ZB92NT5MWBWJ0R+s zWy`-mZrI1JX4D5|EiHY;>`GET)~~I0Y~93GYcMtk#f^5Y7?arZzYiTr`9AKP-+BMf zIrrQ<)39ICuwT;b4yjNg#2|!LSl|MG6-s<*c1T|u&#mB@s4tC7V`hh>*m!n+5YJDs zb?;ynOSFr-4(|#GwiUMRt=aga`h^nWk!DHOrga-+%VeZbt#fuE>`@@!S1Qy3mLsSK zuoU^e6ft7(1)x1ryYF-Qsj&O{McD%k_Dn{;vm!2(;4>nPr1%q&?w8`fiFB(BpBCxW za%?&&f`S12fk-PA_!!Wh$#!2a(P(U@XBD^$7*LL|j;4~)At}OE2Kl&*&noZ{6)D!N z4D4Xg45~u^_o~Pjk>MIn!=u1^!1_G7rdj07LoT}vwS1LlcX>*X%k#1U50r)BOL2j? zMGi4nAs1%^R-zp zOUt>8(BME&8-`<%(}9h$Q4PLI9tyHXcmlCUiCUI`KD8MrgI*8@Pa*q)rpTHXn6gNB z&{WBN3UVo^l6jRZ)rQ{ZQlOSV(Dl5`;DN6c&@Tojf)5q&xL_B8a2w#sBGzhgD>p+{cq$3ZvK(&ZrD2{0&r#R`xP^KTJ=G zLVqsct*JUS9P z6l9&wC@+k}MGCT4mm%+n#ETW=1KoNm%}|ik@F@AsNSv%7i^J1mRv2(BxR`L?axtP5 zmHI2ksG}=2ETF-g~Q}m5h*fH z3?}4_hyvQ3M#4l!X!>LE7BHa)stTYxisVM7n;MLGjljKIp^5{@bCLO)?JS-zXw9Lv zMw88iXNz{yI~F5%#_RwRYslA}HQ@w7D~7k*Fa;Y#yQX6Qh05852aq=n`D$$(W&|xC zSsJa^4DcJujXL7+_rw$xLEG?OGArr<^}Kj|5%woN*FUK)X^%>j!QTFmJP{c|kAI3> ziz;KU_IT|dgSx!?LH-gzNMQOKDkZAjmq@|Y><=Pv3YW}8B68l!`K{It{IOI zm9bSVI;u0{6XXpeD+BGnk~78~0dCWFGj1b~uu;r!$!2yp`5`t)X2w;r?m*M)67`6g zX3#}5c#oWn;|$*?LvdNMEDJtD65?}dkORaKzmRDlZ^g5^eA$_sRY9F&+q9iyQW<`u z37xr?OumkPcxI6WS4#Ps(fR85A9KdaKi0bFE%-RdxM$3S9lJ_O=O!Eu*@doK@FSo` zcPuS^0VkTxi3Y8Bv7dLZR3bjXIPVMY;XTLCyFC%l^z&}xL{24Y2=O|RYkZsVeA#Aq zbsm4TN6Dx*dfz>0*dXD%;7z8TfqQ3LgG*Uo-qV?1$m>9-I)rDX7i_7o07#x5fMTT_ z1$)8w6*!dF$>DU`-P61c8BYk%r6l1%$V|?lu<Ngc5r76}^i+Vex_mEYgUQeyP_a&%;S+6;f zj4wche?SCJ75Us8HFHl2{uDTnCcLE--QE92)XSA`J(RCZ$h(ZBTB4XTvcM8G2Ofo9 zkliW=V6GgXdzF@By-*Gq39m5ho{jcirf*7YN7Jg&q4nfdOSa70WOtE4OG0q&RJ;#T z8izL>uDT_}U^O~R8eA&qhgYh4&2O)Dq2{T08));ILSV3@!^KS$JUMGY-T{5QB2~UN z1W`mENieroIrmD|g$_-{<)Fve#HZqQBE2XTmjUe*9nds~z!B}nRjwNwj|R|_KnFxD z=T2613(El0E=cKTmAzL&Km96jbv^Cs#-j-MUi#u@K|Xlt@~I%X02LaOYY@pyG&pyr z;T*_?nu@CMx;@6_eAb4igN!dIKO{fXDNM)7)E-j!narJz<3V;P|IwoZRGwvuov5Qm z^QPe_>HyC2d{S6W7&VZB0pPnCAZrGm3_7$q^nYwyLFdh?C7t8>GLn`Wmz9BUGPhTW zcloWSId`*gw|9n{3!PjMnrow{p2qTdC8)t=txxLVqIpPmS`Je|o=l5NK-qXLm~s5o*|=1sZ8^AD zq`l<5G`-}kf}BgUkssMWi8_JkZCRmRs5%$V04-W1&I3!<*jBD?yfOX)Wwn0Kec6mDqhqV&v&SKRU#Z4)>!Cx9RSP^b(13?y_Zbf4Pj!ChRO- zTwQ5-MTLW1>tM^O)~%~?uuqm&lmoIlD%pzix*A7qB1y~8lf4<{I}CMY8%k@|JJ?O7 zTgx|pPtJ8P=A2o>dy$~qxJ_qmLn0gBtHSXQyt%BoFk zY8;7dHjCy~LhPs5ic_#Izc_Z{%s_C`Qdlibi8dU}IExPXf^16u5LH!{vk#F77ELuQ6Ob ztflmFxEzTlrHw_3_8g#x^T~>wO0BuzW=70t7N?kOT4??_d*&IJ0E#MxgE5-8#ya5a; zUM=7*9gnvP_yqh|Lgh~*dDx{LhQxu^ODv19h=Hj$z<;0LrLNQ7jTLYaI0va!pmP29X7}Ej6VtrSwcc51>73V%lie)8hLz0z%pxh%`T7BX;}eB zrhiOnbv25M?f=(zmf(5L=boSS3-{rbU%nN1xars{f4E`(`tii84~AzuTwmVo@)o~l zY5wSY-OkT{Xf$qK^makkdtFQZ95XUfUO#`qtn0;Pzpl(F)V}a&-M^C-Ut8)JoU+`q zG_HBtIYscF4lEliubk97kXiKZxmo&e>VqPGwc(<(a_?Tv?$F^AEz5}K=?3=ogU>Cz if3?K=#rUZk5?@B>jEmC$od52p-g(XSrEML)Q~w7cGSDIb delta 4254 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 ZMXs!Xf#MGi&Ab|YX8xrw!|Tu4{s&h94dVa+ diff --git a/src/app/core_logic/client.c b/src/app/core_logic/client.c index 18f937c..a26093b 100644 --- a/src/app/core_logic/client.c +++ b/src/app/core_logic/client.c @@ -34,10 +34,20 @@ void ajouter_article_au_panier(int numeroClient, int references[], float poids[] int numeros[], float cagnottes[], int suspendues[], int nombreArticles, int nombreClients, float volumeCoffre, float chargeMaximale, int panier[], int quantites[], int *taillePanier) { int reference, quantite; + printf("Entrez la référence de l'article : "); - scanf("%d", &reference); + while (scanf("%d", &reference) != 1) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer une référence valide (nombre) : "); + } + while (getchar() != '\n'); + printf("Entrez la quantité : "); - scanf("%d", &quantite); + while (scanf("%d", &quantite) != 1) { + while (getchar() != '\n'); + printf("ERREUR : Veurillez entrer une quantité valide (nombre) : "); + } + while (getchar() != '\n'); int articleIndex = -1; for (int i = 0; i < nombreArticles; i++) { @@ -110,7 +120,11 @@ void ajouter_article_au_panier(int numeroClient, int references[], float poids[] void supprimer_article_du_panier(int panier[], int quantites[], int *taillePanier) { int reference; printf("Entrez la référence de l'article à supprimer : "); - scanf("%d", &reference); + while (scanf("%d", &reference) != 1) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer une référence valide (nombre) : "); + } + while (getchar() != '\n'); int articleIndex = -1; for (int i = 0; i < *taillePanier; i++) { @@ -175,8 +189,13 @@ void affiche_recap_panier(int panier[], int taillePanier, int references[], floa void modifier_quantite_article_panier(int panier[], int quantites[], int *taillePanier) { int reference, quantite; - printf("Entrez la référence de l'article à modifier : "); - scanf("%d", &reference); + + printf("Entrez la référence de l'article : "); + while (scanf("%d", &reference) != 1) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer une référence valide (nombre) : "); + } + while (getchar() != '\n'); // Nettoyer le tampon d'entrée int articleIndex = -1; for (int i = 0; i < *taillePanier; i++) { @@ -191,8 +210,12 @@ void modifier_quantite_article_panier(int panier[], int quantites[], int *taille return; } - printf("Entrez la nouvelle quantité : "); - scanf("%d", &quantite); + printf("Entrez la quantité : "); + while (scanf("%d", &quantite) != 1) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer une quantité valide (nombre) : "); + } + while (getchar() != '\n'); quantites[articleIndex] = quantite; diff --git a/src/app/interface/interface_client.c b/src/app/interface/interface_client.c index 1e83ca7..f2b1522 100644 --- a/src/app/interface/interface_client.c +++ b/src/app/interface/interface_client.c @@ -30,8 +30,7 @@ void menu_client(int *choix, int jour) { printf("Vous choisissez: "); while (scanf("%d", choix) != 1 || *choix < 0 || *choix > 9) { while (getchar() != '\n'); - affiche_client(jour); - printf("Veuillez entrer un choix valide : "); + printf("ERREUR : Veuillez entrer un choix valide : "); } } @@ -55,13 +54,22 @@ void global_client() { nombreClients = charger_clients(numeros, cagnottes, suspendus, MAX_CLIENTS); printf("Veuillez saisir la taille disponible du véhicule (en litres) : "); - scanf("%f", &volumeCoffre); + while (scanf("%f", &volumeCoffre) != 1 || volumeCoffre <= 0) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer une taille de coffre valide (en litres) : "); + } printf("Veuillez saisir la charge maximale autorisée (en kg) : "); - scanf("%f", &chargeMaximale); + while (scanf("%f", &chargeMaximale) != 1 || chargeMaximale <= 0) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer une charge maximale valide (en kg) : "); + } printf("Veuillez saisir votre numéro de client : "); - scanf("%d", &numeroClient); + while (scanf("%d", &numeroClient) != 1) { + while (getchar() != '\n'); + printf("ERREUR : Veuillez entrer un numéro de client valide : "); + } int indexClient = -1; for (int i = 0; i < nombreClients; i++) { From dc6e30a0708f10e12d7269a51febc4d2c1b552cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 15:47:54 +0100 Subject: [PATCH 5/8] added all the verifications MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35456 -> 35456 bytes src/main.c | 19 +++++++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app b/app index 393b16d9dec5c4ed198f67cff83faf159536c128..26c8c713397613fbd876b97880fb9d18e2254be5 100755 GIT binary patch delta 3562 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 LJE{kUy{G;I@sPD{ diff --git a/src/main.c b/src/main.c index 3ec03e6..9db7ce4 100644 --- a/src/main.c +++ b/src/main.c @@ -10,15 +10,22 @@ int choixInterface(void) { printf("Choix de l'interface: \n"); printf("1. Interface 'responsable': Pour les responsables \n"); printf("2. Interface 'Client' : Pour les clients\n"); - printf("Vous choisissez l'interface n°: "); - scanf("%d", &choix); - if (choix < 0 || choix > 1) { - fprintf(stderr,"Veuillez entrer un choix valide ! \n"); + + while (1) { + printf("Vous choisissez l'interface n°: "); + if (scanf("%d", &choix) != 1 || (choix < 1 || choix > 2)) { + printf("ERREUR : Veuillez entrer un choix valide (1 ou 2) : "); + while (getchar() != '\n'); + } else { + break; + } } + switch (choix) { - case 1: printf("Vous avez choisit l'interface responsable.\n"); - case 2: printf("Vous avez choisit l'interface client.\n"); + case 1: printf("Vous avez choisi l'interface responsable.\n"); break; + case 2: printf("Vous avez choisi l'interface client.\n"); break; } + return choix; } From 94037a556da5c5dec126556ca8461a3561e87d1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 16:05:13 +0100 Subject: [PATCH 6/8] added all the verifications MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35456 -> 35456 bytes src/app/core_logic/client.c | 4 ++-- src/app/interface/interface_client.c | 8 ++++---- src/app/interface/interface_client.h | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/app b/app index 26c8c713397613fbd876b97880fb9d18e2254be5..98703f10de14648f1ed04525c6c8942c49d9f9c8 100755 GIT binary patch delta 733 zcmYk3e@K%-7{~A4{do6oliul?ON&iyXo8rS;y?8|gs2!{SgR;dO9BgO5+wbTZ)!2o z#Os+vQE3ETd7R6;kgcNGu4x^j_2LsMHHWfDq zwrB6!${1eGL}jQGGVm=j#utvph6fY~XT_2Ql+1?Srl^U*GMN zU_Mlo*Vs1~yGE@)$L5AJ4*S3NfY@L!%v>6(9juT`^U^9_dQ+}6R=zoHH~JrQr=+IK z)qk2ZGsENO%U(?c69!VB_jMn?zIEj2$B`=SY8c{OJFc$Z0#bu$zh(qSkaXm!e|&XK X&ZBdfRB%bKGsKNj{DLyCV1+T##b{%@^0YQf-f`Qw-+w2Vj0nR+#K~x49#J17 zf%6_&XVPlm4tk@(PFfR^B|%7*CnS348~SHrJkhMZ55blI2d0_43{RGnhG9Y~UEN@j+9z93P-M@I|i}uqO}U zRS1M&Er!AS2&U0ZG^$nQ{GU@Q@Opw28k9*=6!AzC+|6SJP9%kjX6X_GZ6(C5$cX(& zY5%`1&z)fHJV7|kni7$YP@mNhDN94Qtb4MGm53)@`i(0)5TFhzh=!#AIu)Q{HHc=_ z04w4^JQzpsMpn;+~uV`6K3??mlU@fC7!$&#L4B{BlSZ|{SLqjd9AtMc0 zwEnfBT(XX%=L!r|R#gQxqrM{3X?FLGZ#&DwdhQu7EO^@8x?LCFG;Us;wzL`v*Obau zRy0qlrFRRL(tr0R)t%G)i2CF>sl1Xi?Y=)@D%hcO=1)Bv_?fsS-{`Y-kFCAlBhS@X zHeB9T9ocWb 9) { while (getchar() != '\n'); @@ -90,7 +90,7 @@ void global_client() { } do{ - menu_client(&choix, jour); + menu_client(&choix); switch (choix) { case 1: diff --git a/src/app/interface/interface_client.h b/src/app/interface/interface_client.h index f091e36..c6d2838 100644 --- a/src/app/interface/interface_client.h +++ b/src/app/interface/interface_client.h @@ -1,5 +1,5 @@ #include -void affiche_client(int a); -void menu_client(int *choix, int a); +void affiche_client(); +void menu_client(int *choix); void global_client(); \ No newline at end of file From 24bdef86c542d93c6c52741918e2cccdec98b103 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 16:52:22 +0100 Subject: [PATCH 7/8] deduire_cagnotte works MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 35456 -> 52080 bytes donnee/client.txt | 8 +++---- src/app/core_logic/client.c | 33 +++++++++++++++++++++++++++ src/app/core_logic/client.h | 2 ++ src/app/interface/interface_client.c | 16 +++++++++++++ 5 files changed, 55 insertions(+), 4 deletions(-) diff --git a/app b/app index 98703f10de14648f1ed04525c6c8942c49d9f9c8..d305a93b1ac436877ca006c8a5334f3fcb4af700 100755 GIT binary patch delta 5583 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 diff --git a/donnee/client.txt b/donnee/client.txt index 9edf4e1..40223f2 100644 --- a/donnee/client.txt +++ b/donnee/client.txt @@ -1,4 +1,4 @@ -32 0 0 -660 30.00 0 -5079 75.50 0 -8043 50.50 1 +32 0.00 0 +660 19.55 0 +5079 75.50 0 +8043 50.50 1 diff --git a/src/app/core_logic/client.c b/src/app/core_logic/client.c index 9ed649a..d871d19 100644 --- a/src/app/core_logic/client.c +++ b/src/app/core_logic/client.c @@ -226,3 +226,36 @@ void reinitialiser_panier(int panier[], int quantites[], int *taillePanier) { *taillePanier = 0; printf("Panier réinitialisé avec succès.\n"); } + +void deduire_cagnotte(int numeroClient, float montant, int numeros[], float cagnottes[], int nombreClients, int suspendus[]) { + int clientIndex = -1; + for (int i = 0; i < nombreClients; i++) { + if (numeros[i] == numeroClient) { + clientIndex = i; + break; + } + } + + if (clientIndex == -1) { + printf("Client non trouvé. Impossible de déduire la cagnotte.\n"); + return; + } + + if (cagnottes[clientIndex] < montant) { + printf("Cagnotte insuffisante. Impossible de déduire la cagnotte.\n"); + return; + } + + cagnottes[clientIndex] -= montant; + + FILE *fe; + fe = fopen("donnee/client.txt", "w"); + if (fe == NULL) { + perror("fopen"); + return; + } + for (int i = 0; i < nombreClients; i++) { + fprintf(fe, "%d %.2f %d\n", numeros[i], cagnottes[i], suspendus[i]); + } + fclose(fe); +} \ No newline at end of file diff --git a/src/app/core_logic/client.h b/src/app/core_logic/client.h index 9653efd..c7d8bfa 100644 --- a/src/app/core_logic/client.h +++ b/src/app/core_logic/client.h @@ -17,4 +17,6 @@ void affiche_recap_panier(int panier[], int taillePanier, int references[], floa float prixUnitaire[], int quantites[]); void modifier_quantite_article_panier(int panier[], int quantites[], int *taillePanier); void reinitialiser_panier(int panier[], int quantites[], int *taillePanier); +void deduire_cagnotte(int numeroClient, float montant, int numeros[], float cagnottes[], int nombreClients, int suspendus[]); + #endif //SAE_101_CLIENT_H diff --git a/src/app/interface/interface_client.c b/src/app/interface/interface_client.c index c6d1767..57da344 100644 --- a/src/app/interface/interface_client.c +++ b/src/app/interface/interface_client.c @@ -110,6 +110,22 @@ void global_client() { reinitialiser_panier(panier, quantites, &taillePanier); break; case 9: + printf("Voulez-vous déduire de votre cagnotte avant de quitter ? (1 pour Oui, 0 pour Non) : "); + int choixCagnotte; + scanf("%d", &choixCagnotte); + if (choixCagnotte == 1) { + // Demander le montant à déduire de la cagnotte + float montant; + printf("Entrez le montant à déduire de votre cagnotte : "); + scanf("%f", &montant); + + // Appeler la fonction pour déduire la cagnotte + deduire_cagnotte(numeroClient, montant, numeros, cagnottes, nombreClients, suspendus); + + // Informer le client que la cagnotte a été déduite + printf("Le montant a été déduit de votre cagnotte.\n"); + } + printf("Au revoir !\n"); return; default: From 437a15c2e918bd935ab9cb34bd915f235d75b34d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20Hersan?= Date: Mon, 30 Oct 2023 16:59:03 +0100 Subject: [PATCH 8/8] jsp MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathéo Hersan --- app | Bin 52080 -> 52080 bytes donnee/client.txt | 2 +- src/app/interface/interface_client.c | 3 --- 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/app b/app index d305a93b1ac436877ca006c8a5334f3fcb4af700..893f445fbf5a63f68a8d28fb643241010b7f4f39 100755 GIT binary patch delta 3521 zcmZ`+3sjWX5x)O&kwrn-h=8)l@-QHRf`O=n$cn6jf`W>IA`jVBo-5)SwVD7GJ)oE{ z&T7|FUT8p0ju7oB3w$+&lB% z`)}_qyWU-PH5QdeEFl~r#5$G@?BfBqqE*BwDhov&AsEI*s|qD8rxMkL&E?!&g-ghY z4gdVuJ#0+l^)049RvdQ0ZoA1`ee+2AEE>~eRi#Z+pnC|hRShO)=4T;i7e2TZ_J>iWR=x@|ELCzOyZN}zh`()8Z`(` zW9!UHs&)Xx#JE68l~9T6s;Xq?vm#)(KCHc71fM@ z9=tzCL(@mV9dw=>PLGU$E2x{B%bPyM<8#%NxWNg$G&fY8>IR1#i1}4*dl0>nqC)Sw z!3V!4SoprKX8JzXlTt-3WPv+W;H@NAzAwwME-8vKZzHdXV48xL=~j2hVLIzDt!=;~ zV3vM1`2)wIk568SJ5%rxueFg+d+gODuD8jX#~QFP--2$nTtk((Dx?~a5~ z7&b2{kfp6;0bWrE3+WmKzYG!!@iS)6cgJ({!Za10a9>isv`NAq+(Xs;Sf?^ISR_(A z^VDdIJXD(NHIQZORyUjtE}+Fl<4rldCsWN~AKu z>xehJD=DnQf4!CKv6XoxXh1KK(ovP7<Ra}F4hQLX9mgMZtJwdH%Q;V15r zbVLhf?893b?uy%X?C~2p+(Ih+p_{RLq~^XV=zT53GzP8=h+?%<$Y-_?<&qGkO^#w2 z1Lp=r`NR&t*Lz}X=6i!Iq~&$kiMp&LdNKgYa8Fh-T@VQDHp%v<9%CV`IU?JIqZh}5 zE5lm`4lXkwrAE3D=KFcjwo+~6*iu;(ra$1LHb3^S}MGH85U+>P} zZY#J~=aPy(c|tA=89~k^kty9#pSRhS)!t(t7Pe@lGWMw$K zHXx*<5Ym)C!oD~H>{wd)ljxHO=*KVePbzEPgufDEo`ahU0+pso@F@c^c&flVh}|76 zicoG3DhH z8p!nNg?R>}iNsT~yHYTJ$&VH@=C@`zv^Vph2ET5dqU<@w%N=LYrOhX);u;?$yJUrd z>{YDHTNiIM8A_IC=NQN*3QEjZcxuBoer!L?GjqgQt}EEmiped;slU!!JFEDyzY)vZ z+#D=tcuH0CE<=_5wDZ5Rr0Truqjcr?~$nW_Vp4@k`mY|;mTameni427mK)+$Kh;9momC4 z5n573!gmsmT_WNq5)N!`{aisqtZY&Ihs!Q5CSR?8=YrNyKJ%D){MGQ@_iOI0t~|LW zHnrwQsdFVg$wer>1k!E{wcrungt&kutdcGS;zJP~qNu|9LdqjsIO`Ii&iUbOtZOf$XI m<9glnmTli=eCB`fn>CZ1->u5O`Imoa*B-t5r+~xxKK})zh%VXy delta 3291 zcmZ`*3sjWH6`p??1awh0BCN8;Mb-!ixSp zcVm2EH$B*h#p7D=9SvwW#|Na__=r@KfSObyC^nvojjf&e9|k?gJ!j{?-<|K?|C_lp z^UuIGyMb+XAK5hN;e-f;kPaW#uwOd#m^9vNBxjN2BiN#Gn1p^Tj?lS=*uh;VV!rwGsk@jUfx z0`#%~QFxUabPSJRf<)Y+1}%0)nS`Hl?4pHAX&*X1U)li$v(ol6o0s-3f3ni{Dt&Tk ze^4+h?M=xZAR*51y<*>Sh8v1qI}*AS+iw*3UsZr@6kJm5G8eEZwyOp@na#_55uKw0 zX@>?*;ezN2>h}uNV|(;M`q3+}6*Vz2e3sT@c8peCHX7ElAYO%h6yn@*cT7F!n{ZyN zo<1B6Gch|hP@mum-ZD*`(9J_8l;twu;n)zhVGOv)BuAFZLR-hc54bl@PoIo|8+bl0 zkjA*dS181<;$6*H9IvAmH~0&F5O35Cy1^a?Vt!#k+W3OpgvXB4a1ubaU}7&i@jShRjD zL@3c=FGkmmg}FSMSNw(OAk0e)*6GH^+Z6nCsh3ZMoZ+{8mkT2A{8JCnlI`tfjHrnPaJbC0wQZRGNJIE|r;#qD|mGZu%d z%U^}PGPnMDu6hFO#J@}2ZP?GaEfb(x=B|I98>5HcV0N;Yw-h%dhpYSakRfwZM5(uv zeJDF(7AaCA&_5+dFt9#7t?&d-Je*=yCBBN$OOCiYPJ~W-VzyTb7d#Qpe~h#{fqlMzH$8Nd(oGQ{*_ac@Sn zK=46E9j!CKJ*>_YOYjrcXSxg5u_sgKVweP7cEsE#FG3r4QrFk`YF{prFNoxmBDv%> zI6j1I#q8xfhgnJbWcWP_SqU`Ro9)h&tP=Xr8`z1RWuV7=AgTF5mWx1(e8Cy*SA^TQ z`ob?Nj9cMB*+=JREM8&I*?gf_B_2;!k~{@|RP2f=a0?Ht*iBpf;3UT8XepfvEm)AF zr?pf0_G2D04H~eKdCI4;{np7m1Jl5az08wpg!j=oH^{Tq2o)^nvm<-)vs1vzw`sXb zJhBULL#|H4CM2J6l?lmIv9F06w&vE*x&R2qs5~=meI4AeCohB+O$U3Nw6c}58MutS zE3eV=Kz?H7mvNz$IB%6!&-9fG>~srD|D3c=eDx07XzY9bU$)z=gehHzZ?7_Xvg+hA z(#r&930$BmQNWG49$aBOBP$9c1W}>BpeBGRG_W3aQ{bnGm9RSMho%jCe%v}Kt+SNY zdj^acl2#?9H5QJscbN%K2rep|MR(7Heyk~MaWu|?F9JnB(%Z?Vy(*|c$*fF+eiXMS^v zVXxtT@8$!Q%R(Kx|0objx^ZONc#~xhw{3fQyS;(8P1|{UY!^$W3N0-w$SKMrVPQoD zd27l@6eTxm#qJK?nm@+EwoHe*77i}s-`Zw7S`Tu2`w4V8 zQESTbN>^s*C`EtlU@|C0t2@R!Ri6VnhMv zMH23mv3i+=zm;)vri2G&Y+Wj0HG3-`fHp(I<7M2$)({uuFXL;45;lprl90Xyk|Rzg zsFz6iO&NC-OE_D`I+?#l#z84k|9Tml(0kvc--s9aNt6A<^ObtW=-Ap@6h4z9o975|8v99ug|+x1irKGUKO0QydCCIrh9a8 zU+R_po7ej;yBfbQDPj8E=!B~$Z?$_B&A$5S#REZqs?2e+{p(xT_I0;@OzVaZw)ULs z>xRg|a}GVXn+HDgO{)3F7b`DyJ=ryKpnBtxk$-4>_oVBGmD@Ib_nGtj(L2y~p-O+D k@xDXImMTlN*Cc8eaOCWwtj=YRtmWFNGY5+|Ovx|)KkRnr4FCWD diff --git a/donnee/client.txt b/donnee/client.txt index 40223f2..e542074 100644 --- a/donnee/client.txt +++ b/donnee/client.txt @@ -1,4 +1,4 @@ 32 0.00 0 -660 19.55 0 +660 11.03 0 5079 75.50 0 8043 50.50 1 diff --git a/src/app/interface/interface_client.c b/src/app/interface/interface_client.c index 57da344..54c0f29 100644 --- a/src/app/interface/interface_client.c +++ b/src/app/interface/interface_client.c @@ -114,15 +114,12 @@ void global_client() { int choixCagnotte; scanf("%d", &choixCagnotte); if (choixCagnotte == 1) { - // Demander le montant à déduire de la cagnotte float montant; printf("Entrez le montant à déduire de votre cagnotte : "); scanf("%f", &montant); - // Appeler la fonction pour déduire la cagnotte deduire_cagnotte(numeroClient, montant, numeros, cagnottes, nombreClients, suspendus); - // Informer le client que la cagnotte a été déduite printf("Le montant a été déduit de votre cagnotte.\n"); }