Ajout de la fonction

doc
Julien ABADIE 1 year ago
parent 9684260c27
commit 0090a24956

@ -41,3 +41,4 @@ int recherche(int val, int tab[], int tlog);
//! PANIER
void clientConstraint(float *weight, float *volume, float *price);
int constraintExceeded(float weightConstraint, float volumeConstraint, float *priceConstraint, float tabWeight[], float tabVolume[], float tabUnitPrice[], int tabQuantity[], int tlog, float *cagnotte);
int basket_add (int tab_reference[], float weight[], float volume[], float unitPrice[], float *cagnotte, int basket_tab_ref[], int basket_tab_qte[],int tlog, int tlog_basket);

@ -82,3 +82,55 @@ int constraintExceeded(float weightConstraint, float volumeConstraint, float *pr
}
return 0;
}
/**
* @brief Ajoute un article au panier et calcule les différents attributs pour la fonction `display_basket`
* @param tab_reference: tableau des références des articles
* @param weight: tableau des poids des articles
* @param volume: tableau du volume des articles
* @param unitPrice: tableau du prix unitaire des articles
* @param cagnotte: pointeur indiquant la valeur de la cagnotte
* @param basket_tab_ref: tableau des références du panier
* @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
*/
int basket_add (int tab_reference[], float weight[], float volume[], float unitPrice[], float *cagnotte, int basket_tab_ref[], int basket_tab_qte[],int tlog, int tlog_basket)
{
int ref_to_add, qte_to_add, trouve, index_ajout, i;
float total_weight=0, total_volume=0, total_price=0, total_cagnotte=0;
printf("Quelle référence souhaitez-vous ajouter au panier?");
scanf("%d", &ref_to_add);
index_ajout = searchTab(tab_reference, ref_to_add, tlog, &trouve);
while (trouve == 0)
{
printf("L'élément que vous souhaitez ajouter n'existe pas, ressayez s'il vous plaît");
scanf("%d", &ref_to_add);
index_ajout = searchTab(tab_reference, ref_to_add, tlog, &trouve);
}
basket_tab_ref[index_ajout] = ref_to_add;
printf("Quelle quantité de cet article souhaitez-vous ajouter au panier?");
scanf("%d", &qte_to_add);
while (qte_to_add <= 0)
{
printf("Vous ne pouvez pas ajouter une quantité nulle ou négative ressayez");
scanf("%d", &qte_to_add);
}
basket_tab_qte[index_ajout] = ref_to_add;
for (i=0; i<tlog_basket; i++)
{
index_ajout = basket_tab_ref[i];
total_weight = total_weight + weight[index_ajout]*qte_to_add;
total_volume = total_volume + volume[index_ajout]*qte_to_add;
total_price = total_price + unitPrice[index_ajout]*qte_to_add;
}
*cagnotte = *cagnotte + *cagnotte*0.10;
basket_add()
tlog_basket = tlog_basket+1;
return tlog_basket;
}
Loading…
Cancel
Save