diff --git a/src/panier.c b/src/panier.c index 046058b..82be72e 100644 --- a/src/panier.c +++ b/src/panier.c @@ -131,11 +131,10 @@ int constraintExceeded(float weightConstraint, float volumeConstraint, float *pr * @param basket_tab_qte: tableau de la quantité de l'article du panier. * @param tlog: taille logique du tableau `tab_reference`. * @param tlog_basket: taille logique du panier. - * @return taille logique du panier. */ void basket_add(int tab_reference[], float unitPrice[], float *cagnotte, int basket_tab_ref[], int basket_tab_qte[], int tlogItem, int *tlog_basket) { - int ref_to_add, qte_to_add, trouve, index_ajout; + int i, ref_to_add, qte_to_add, trouve, index_ajout; float total_weight[tmaxArticles], total_volume[tmaxArticles], total_price[tmaxArticles], total_cagnotte[tmaxArticles]; printf("Quelle référence souhaitez-vous ajouter au panier?"); scanf("%d", &ref_to_add); @@ -154,6 +153,11 @@ void basket_add(int tab_reference[], float unitPrice[], float *cagnotte, int ba printf("Vous ne pouvez pas ajouter une quantité nulle ou négative ressayez"); scanf("%d", &qte_to_add); } + for (i=*tlog_basket; i>=index_ajout; i--) + { + basket_tab_ref[i]=basket_tab_ref[i+1]; + basket_tab_qte[i]=basket_tab_qte[i+1]; + } basket_tab_qte[index_ajout] = ref_to_add; *cagnotte += (unitPrice[index_ajout]*qte_to_add) *0.1; @@ -215,7 +219,7 @@ void basket_del_article(int basket_tab_ref[], int basket_tab_qte[], int *tlog_ba } else if (qte_to_del==basket_tab_qte[index_to_del]) { - for (i=*tlog_basket; i>index_to_del; i--) + for (i=*index_to_del; i