IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Gestion des commandes d'un restaurant


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    informatique de gestion
    Inscrit en
    Avril 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : informatique de gestion
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Gestion des commandes d'un restaurant
    dans ce projet, il vous est demandé de réaliser une application de gestion de commandes et de facturation dans un restaurant. Un restaurant est composé d’un ensemble de tables clients. Chaque table est définie par un numéro. Le menu d’un restaurant est composé essentiellement de plats (salades, soupes, pates, grillades, etc), de boissons (eau minérale, jus, thé, café, etc), et d’extras (portion frites natures, portion frites épicées, etc). Étant donnée une table composée de plusieurs clients, une commande spécifique est faite pour chaque client. Celle-ci est donnée par le menu, la boisson (et extras s’il y en a) commandés du client concerné. Pour chaque table, une ou plusieurs factures est/sont produite(s). Ceci est réalisé soit par clients ou pour la table entière.
    ps: j'ai déjà saisie le programme mais la compilation ne marche pas , je cherche de l'aide pour corriger mon code merci !
    j'ai utilisé les listes chainées , merci .


    voici mon code :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    #include <stdio.h>
    #include <stdlib.h>
    #include <ctype.h>
    #define TVA 0.06 
     
    typedef struct{
    	char plat[20];
    	float prix;
    }menu;
    menu m;
    typedef struct m{
       menu	val;
    	struct m*suiv;
    }article;
    //1)Creation liste vide : 
    void cree_list (article **l)//initialiser,modifier mais on va pas retourner et si fonction on ne fait pas double etoile
    { 
     *l = NULL ;
    }
    //2)Saisie plat :
    menu saisie_article ()
    { menu m;
    printf ("saisie Plat\n");
    scanf("%s",m.plat);
    printf ("saisie Prix\n");
    scanf("%f",m.prix);
    return (m);
     
    }
    //3)Ajout d'un article : 
    article* ajouter_element (article*l,menu m)//menu m) //si void on ecrit listreel**l ici au debut
    { article*nouv;
    nouv=(article*)malloc(sizeof(article));
    nouv->val=saisie_article(); //nouv->val=m;
    nouv->suiv=l;
    l=nouv;
    return (l);
    }
    //4)somme des articles achetés:
    float somme_article (article*l)//mode de passage par valeur
    { article*cour;
    float sous_totale;
    menu m;
    cour=l;
    sous_totale=0;
    if (l==NULL){
     
    return 0;
    }else
    while (cour!=NULL){
    	sous_totale=sous_totale + m.prix;
    	cour=cour->suiv;
    }
    return (sous_totale);
    }
    //5)calcule de TVA
    float tva()
    { float totale,sous_totale;
    totale = sous_totale+ (sous_totale*TVA);
    return (totale);
    }
    //6)Affichage des articles :
    void afficher_article(article*l)
    { article*cour;
    cour=l;
    while (cour !=NULL)
          { printf("*Article*\t\t*Prix*\n%s\t\t%f\n",m.plat,m.prix);
          cour=cour->suiv;
    	  }
    }
    //7)taille articles : 
    int taille_article (article *l)
    { if (l==NULL)
    return 0;
    else return 1+taille_article(l->suiv);
    }
    //8) prohgramme principale :
    main()
    {int n;
     article*l;menu m ;
     char rep;
    float sous_totale,s; 
     
    cree_list(&l); //car on l'a declare en passage par adresse ou passage par variable
    printf("\t\t***WELCOME TO FOODY'S***\n");
    do{
    	printf ("voulez vous ajouter un article? TAPEZ O/N\n");
    	scanf(" %c",&rep);
    	if(rep=='o' || rep =='O') //if (toupper(rep)=='O') dans biblio <ctype.h>
    	m=saisie_article();
             l=ajouter_element(l,m);
     
     
    }while(!(toupper(rep)=='N'));
    //nombre des articles :
    n=taille_article(l);
    printf("le taille des articles a acheter *\t%d*\t",n);
     
     
    //layout du ticket:
    printf("\t\t***FOODY\'S***\n");
    printf ("\t\t***Telephone 25 618 678***\n");
    printf ("\t\t***Notre Adresse 07,rue Ahmed Pacha 1255,LAC II***\n");
    afficher_article(l);
    printf("\t\t\tSous Totale : %f DT\n",somme_article(l));
    printf("\t\t\tTaux De TVA : 6% = %f\n",sous_totale*0.06);
    printf("\t\t\tTOTALE = %f\n",tva());
    printf ("\t\t ***WELCOME TO FOODY\'S");
     
     
    }

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Bonjour

    Un code aussi mal indenté en est illisible. J'ai quand-même réussi à remarquer que
    • scanf("%f",m.prix); ne peut pas marcher
    • dans la fonction ajouter_element (article*l,menu m) le paramètre "l" ne sert à rien
    • la fonction
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      float tva() {
      	float totale,sous_totale;
      	totale = sous_totale+ (sous_totale*TVA);
      	return (totale);
      }
      me laisse assez perplexe (comment connait-elle le prix HT pour calculer la TVA ???)
    • cette ligne printf("\t\t\tTaux De TVA : 6% = %f\n",sous_totale*0.06) me pose aussi quelque souci vu que la variable "sous_totale" n'est pas remplie


    Et de façon générale, tu ne maitrises absolument pas les listes chainées et ce serait trop long de te dire tout ce qui ne va pas. Je te conseille d'aller télécharger ce petit exemple pour t'en inspirer.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. [MCD] Gestion des commandes avec quelques spécifications.
    Par insane_80 dans le forum Schéma
    Réponses: 3
    Dernier message: 03/07/2009, 12h33
  2. Gestion des commandes/Actions
    Par rockeye dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 19/03/2009, 08h39
  3. [SOURCE] Gestions des commandes, factures, paiements
    Par itzik92 dans le forum Contribuez
    Réponses: 0
    Dernier message: 28/11/2008, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo