@ -18,27 +18,27 @@ void clientConstraint(float *weight, float *volume, float *price)
{
{
// Saisie des contraintes du client.
// Saisie des contraintes du client.
printf ( " Entrez la charge maximale de votre véhicule en kilogrammes: " ) ;
printf ( " Entrez la charge maximale de votre véhicule en kilogrammes: " ) ;
scanf ( " %f " , weight ) ;
scanf ( " %f %*c " , weight ) ;
while ( * weight < 0 )
while ( * weight < 0 )
{
{
printf ( " Erreur, le poids doit être positif, entrez la charge maximale de votre véhicule en kilogrammes: " ) ;
printf ( " Erreur, le poids doit être positif, entrez la charge maximale de votre véhicule en kilogrammes: " ) ;
scanf ( " %f " , weight ) ;
scanf ( " %f %*c " , weight ) ;
}
}
printf ( " Entrez le volume du coffre de votre véhicule en mètres cubes: " ) ;
printf ( " Entrez le volume du coffre de votre véhicule en mètres cubes: " ) ;
scanf ( " %f " , volume ) ;
scanf ( " %f %*c " , volume ) ;
while ( * volume < 0 )
while ( * volume < 0 )
{
{
printf ( " Erreur: le volume doit être positif, entrez le volume du coffre de votre véhicule en mètres cubes: " ) ;
printf ( " Erreur: le volume doit être positif, entrez le volume du coffre de votre véhicule en mètres cubes: " ) ;
scanf ( " %f " , volume ) ;
scanf ( " %f %*c " , volume ) ;
}
}
printf ( " Entrez votre budget maximum ou -1 si vous n'en avez pas: " ) ;
printf ( " Entrez votre budget maximum ou -1 si vous n'en avez pas: " ) ;
scanf ( " %f " , price ) ;
scanf ( " %f %*c " , price ) ;
while ( * price < 0 & & * price ! = - 1 )
while ( * price < 0 & & * price ! = - 1 )
{
{
printf ( " Erreur: le prix doit être positif, entrez votre budget maximum ou -1 si vous n'en avez pas: " ) ;
printf ( " Erreur: le prix doit être positif, entrez votre budget maximum ou -1 si vous n'en avez pas: " ) ;
scanf ( " %f " , price ) ;
scanf ( " %f %*c " , price ) ;
}
}
}
}
@ -97,7 +97,7 @@ int constraintExceeded(float weightConstraint, float volumeConstraint, float *pr
else
else
{
{
printf ( " Vous pouvez utiliser votre cagnotte, dont le montant est de %.2f, entrez le montant à utiliser ou -1 si vous voulez retirer un article: " , * cagnotte ) ;
printf ( " Vous pouvez utiliser votre cagnotte, dont le montant est de %.2f, entrez le montant à utiliser ou -1 si vous voulez retirer un article: " , * cagnotte ) ;
scanf ( " %f " , & cagnotteUse ) ;
scanf ( " %f %*c " , & cagnotteUse ) ;
if ( cagnotteUse = = - 1 )
if ( cagnotteUse = = - 1 )
return - 1 ;
return - 1 ;
@ -107,7 +107,7 @@ int constraintExceeded(float weightConstraint, float volumeConstraint, float *pr
printf ( " Erreur: vous ne pouvez pas utiliser plus que vous n'avez, réessayez ou entrer -1 si vous souhaitez retirer un article: " ) ;
printf ( " Erreur: vous ne pouvez pas utiliser plus que vous n'avez, réessayez ou entrer -1 si vous souhaitez retirer un article: " ) ;
if ( totalPrice - cagnotteUse > * priceConstraint )
if ( totalPrice - cagnotteUse > * priceConstraint )
printf ( " Erreur: vous n'avez pas utilisé assez de votre cagnotte, vous devez utiliser au moins %.2f, veuillez rentrer le montant à utiliser ou -1 si vous voulez retirer un article: " , totalPrice - * priceConstraint ) ;
printf ( " Erreur: vous n'avez pas utilisé assez de votre cagnotte, vous devez utiliser au moins %.2f, veuillez rentrer le montant à utiliser ou -1 si vous voulez retirer un article: " , totalPrice - * priceConstraint ) ;
scanf ( " %f " , & cagnotteUse ) ;
scanf ( " %f %*c " , & cagnotteUse ) ;
if ( cagnotteUse = = - 1 )
if ( cagnotteUse = = - 1 )
return - 1 ;
return - 1 ;
* cagnotte - = cagnotteUse ;
* cagnotte - = cagnotteUse ;
@ -137,7 +137,7 @@ void basket_add(int tab_reference[], float unitPrice[], float *cagnotte, int ba
int i , 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 ] ;
float total_weight [ tmaxArticles ] , total_volume [ tmaxArticles ] , total_price [ tmaxArticles ] , total_cagnotte [ tmaxArticles ] ;
printf ( " Quelle référence souhaitez-vous ajouter au panier? " ) ;
printf ( " Quelle référence souhaitez-vous ajouter au panier? " ) ;
scanf ( " %d " , & ref_to_add ) ;
scanf ( " %d %*c " , & ref_to_add ) ;
index_ajout = searchTab ( tab_reference , ref_to_add , tlogItem , & trouve ) ;
index_ajout = searchTab ( tab_reference , ref_to_add , tlogItem , & trouve ) ;
while ( trouve = = 0 )
while ( trouve = = 0 )
{
{
@ -147,11 +147,11 @@ void basket_add(int tab_reference[], float unitPrice[], float *cagnotte, int ba
}
}
basket_tab_ref [ index_ajout ] = ref_to_add ;
basket_tab_ref [ index_ajout ] = ref_to_add ;
printf ( " Quelle quantité de cet article souhaitez-vous ajouter au panier? " ) ;
printf ( " Quelle quantité de cet article souhaitez-vous ajouter au panier? " ) ;
scanf ( " %d " , & qte_to_add ) ;
scanf ( " %d %*c " , & qte_to_add ) ;
while ( qte_to_add < = 0 )
while ( qte_to_add < = 0 )
{
{
printf ( " Vous ne pouvez pas ajouter une quantité nulle ou négative ressayez " ) ;
printf ( " Vous ne pouvez pas ajouter une quantité nulle ou négative ressayez " ) ;
scanf ( " %d " , & qte_to_add ) ;
scanf ( " %d %*c " , & qte_to_add ) ;
}
}
for ( i = * tlog_basket ; i > = index_ajout ; i - - )
for ( i = * tlog_basket ; i > = index_ajout ; i - - )
{
{
@ -189,27 +189,27 @@ void basket_del_article(int basket_tab_ref[], int basket_tab_qte[], int *tlog_ba
int ref_to_del , trouve , index_to_del , qte_to_del , i ;
int ref_to_del , trouve , index_to_del , qte_to_del , i ;
printf ( " Quelle référence voulez vous supprimer de votre panier? \n " ) ;
printf ( " Quelle référence voulez vous supprimer de votre panier? \n " ) ;
scanf ( " %d " , & ref_to_del ) ;
scanf ( " %d %*c " , & ref_to_del ) ;
index_to_del = searchTab ( basket_tab_ref , ref_to_del , * tlog_basket , & trouve ) ;
index_to_del = searchTab ( basket_tab_ref , ref_to_del , * tlog_basket , & trouve ) ;
while ( trouve = = 0 )
while ( trouve = = 0 )
{
{
printf ( " Erreur, la valeur que vous voulez supprimer n'existe pas, réssayez " ) ;
printf ( " Erreur, la valeur que vous voulez supprimer n'existe pas, réssayez " ) ;
scanf ( " %d " , & ref_to_del ) ;
scanf ( " %d %*c " , & ref_to_del ) ;
index_to_del = searchTab ( basket_tab_ref , ref_to_del , * tlog_basket , & trouve ) ;
index_to_del = searchTab ( basket_tab_ref , ref_to_del , * tlog_basket , & trouve ) ;
}
}
if ( basket_tab_qte [ index_to_del ] > 1 )
if ( basket_tab_qte [ index_to_del ] > 1 )
{
{
printf ( " Combien d'articles e ce type voulez-vous supprimer? " ) ;
printf ( " Combien d'articles e ce type voulez-vous supprimer? " ) ;
scanf ( " %d " , & qte_to_del ) ;
scanf ( " %d %*c " , & qte_to_del ) ;
while ( qte_to_del < = 0 )
while ( qte_to_del < = 0 )
{
{
errorHandling ( - 14 ) ;
errorHandling ( - 14 ) ;
scanf ( " %d " , & qte_to_del ) ;
scanf ( " %d %*c " , & qte_to_del ) ;
}
}
while ( basket_tab_qte [ index_to_del ] - qte_to_del > = 0 )
while ( basket_tab_qte [ index_to_del ] - qte_to_del > = 0 )
{
{
errorHandling ( - 12 ) ;
errorHandling ( - 12 ) ;
scanf ( " %d " , & qte_to_del ) ;
scanf ( " %d %*c " , & qte_to_del ) ;
}
}
if ( qte_to_del < basket_tab_qte [ index_to_del ] )
if ( qte_to_del < basket_tab_qte [ index_to_del ] )
{
{