Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include "main.h"
- #define clean_input_stream() while(getchar() != '\n')
- #define TAX 0.2
- int nombreProduit;
- struct produit listeProduits[MAX_PRODUITS];
- int main()
- {
- char ref[64];
- int refId;
- int quantite;
- int nbrProduitAchete;
- struct infoProduitAchete listeProduitsAchete[MAX_PRODUITS];
- int continuer;
- float totalht = 0;
- printf("================= Saisie de produit =================\n");
- printf("Veuillez saisir le nombre de produit : ");
- scanf("%d", &nombreProduit);
- for(int i = 0; i < nombreProduit; i++) {
- printf("\n==== Produit n %d ====\n", i+1);
- clean_input_stream();
- printf("Veuillez saisir la reference du produit : ");
- scanf("%[^\n]s", listeProduits[i].reference);
- clean_input_stream();
- printf("Veuillez saisir la designation : ");
- scanf("%[^\n]s", listeProduits[i].designation);
- clean_input_stream();
- printf("Veuillez saisir le stock de ce produit : ");
- scanf("%d", &(listeProduits[i].stock));
- clean_input_stream();
- printf("Veuillez saisir le seuil : ");
- scanf("%d", &(listeProduits[i].seuil));
- clean_input_stream();
- printf("Veuillez saisir le prix HT : ");
- scanf("%f", &(listeProduits[i].prixHT));
- }
- do {
- system("cls");
- nbrProduitAchete = 0;
- printf("================= Nouveau client =================\n\n");
- do {
- printf("--- saisie du produit n %d ---\n", nbrProduitAchete + 1);
- // saisie de la reference du produit, boucle bloquante tant que la reference est invalide
- do {
- clean_input_stream();
- printf("Veuillez saisir la reference du produit : ");
- scanf("%[^\n]s", ref);
- refId = get_id_by_ref(ref);
- if(refId == -1)
- printf("Reference invalide !!\n");
- }while(refId == -1);
- // sasie de la quantite voulue
- printf("Veuillez saisir la quantite du produit voulue : ");
- scanf("%d", &quantite);
- listeProduitsAchete[nbrProduitAchete].id = refId;
- listeProduitsAchete[nbrProduitAchete].quantite = quantite;
- nbrProduitAchete++;
- do {
- clean_input_stream();
- printf("Voulez vous continuer ?(O/N) : ");
- continuer = tolower(getchar());
- }while(continuer != 'o' && continuer != 'n');
- }while(continuer == 'o');
- system("cls");
- printf("Reference\tDesignation\tQuantite Achete\tPrix Unitaire\tMontant HT\n\n");
- for(int i = 0; i < nbrProduitAchete; printf("\n"), i++) {
- printf("%-9s\t", listeProduits[listeProduitsAchete[i].id].reference);
- printf("%-11s\t", listeProduits[isteProduitsAchete[i].id].designation);
- printf("%-15d\t", listeProduitsAchete[i].quantite);
- printf("%-13f\t", listeProduits[listeProduitsAchete[i].id].prixHT);
- printf("%f", (listeProduitsAchete[i].quantite * listeProduits[listeProduitsAchete[i].id].prixHT));
- totalht += listeProduitsAchete[i].quantite * listeProduits[listeProduitsAchete[i].id].prixHT)
- }
- printf("\n\n Total Hors Tax : %f\n", totalht);
- printf("Total Toute Tax Comprise : %f\n\n", totalht + totalht*TAX);
- system("pause");
- }while(1);
- return 1;
- }
- int get_id_by_ref(char ref[]) {
- for(int i = 0; i < nombreProduit; i++)
- if(strcmp(tolower(ref), tolower((listeProduits[i]).reference)) == 0 )
- return i;
- return -1;
- }
Advertisement
Add Comment
Please, Sign In to add comment