ibnoul
Messages postés6Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention12 avril 2007
-
11 avril 2007 à 16:51
ibnoul
Messages postés6Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention12 avril 2007
-
12 avril 2007 à 17:00
Salut j'aimerai avoir de l'aide a propos de ce programme en c++ il me sigale des errreurs et je ne parvient pas a les corriger. On me demande creer un menu avec a l'interieur des choix concernant la gestion d'un stock de marchadise.
Voici le code que j'ai pu ecrire et qui contient des erreurs Merci de m'aider
#include <stdio.h>
#include <conio.h>
#define n 10 tva 0.18
int menu (void);
void listepdt(void) ;
void saisiecode(void);
void facture (void);
struct produit
{
char m[10];
char o [10];
char t [10];
char p [10];
};
produit[n] ;
int menu (void);
{
int choix;
clrscr();
printf ("Menu principal \n");
printf ("1. liste des produits \n");
printf ("2. Saisie code des produits\n");
printf ("3. Impression de la facture\n");
printf ("4.Quitter le Menu\n");
printf (" Merci de faire votre choix :_");
scanf ("%d",& choix);
return (choix);
}
void listpdt (void);
{
char m [10];
char o [10];
char t [10];
char p [10] ;
int pu, qte, pht, ttc, nbp, mtc, total, rel;
char choix;
nbp=0; total=0;
while ((nbp<4) && choix!= q));
printf ("Entrer le code u produit ou Q pour quitter \n");
scanf ("%c",& choix);
printf(" Entrer la qunatit‚ de produit\n");
scanf("%d",& qte);
switch (choix);
{
case 'm' : pu=500
ttc= (qte*pu)(tva+1);
break;
case 'o' : pu=100
ttc= (qte*pu)(tva+1);
break;
case 'p' : pu=1200
ttc= (qte*pu)(tva+1);
break;
case 't' : pu=100
ttc= (qte*pu)(tva+1);
break;
case 'q'
printf("merci de votre visite");
break;
default;
printf("Le produit demand‚ n'existe pas dans nos raon\n");
}
total=total+ttc;
nbp++;
printf("Entrer le montant du client\n");
scanf("%d",& mtc);
rel=mtc-total;
printf ("Le montant total :%d",total);
printf("vore reliquat est de=%d",rel);
}
main()
{
int choix=menu();
switch(choix);
{
case 1: printf("Liste des produit\n");
break;
case 2: printf("saisie code des produits\n");
break;
case 3: printf("Impression de la facture\n");
break;
case 4: printf("Quitter le menu\n");
break;
default : printf("Aucun produit n'a ‚t‚ saisie\n");
}
{
int facture
facture== total
if total=0;
{
printf("votre facture ne peut etre imprim‚e\n");
}
}
ndubien
Messages postés557Date d'inscriptiondimanche 25 septembre 2005StatutMembreDernière intervention10 mai 20144 11 avril 2007 à 23:14
Bonjour,
voilà ton code remis à neuf.
#include <stdio.h>
#include <conio.h>
int menu ();
void listepdt() ;
void saisiecode();
void facture ();
int menu (){
int choix;
printf ("Menu principal \n");
printf ("1. liste des produits \n");
printf ("2. Saisie code des produits\n");
printf ("3. Impression de la facture\n");
printf ("4.Quitter le Menu\n");
printf (" Merci de faire votre choix :_");
scanf ("%d",& choix);
return (choix);
}
void listpdt (){
int tva=0.18;
int pu=0;
int qte=0;
int pht=0;
int ttc=0;
int nbp=0;
int mtc=0;
int total=0;
int rel=0;
char choix;
while ((nbp<4)&&choix!='Q'){
printf ("Entrer le code u produit ou Q pour quitter \n");
scanf ("%c",& choix);
printf(" Entrer la qunatit? de produit\n");
scanf("%d",& qte);
switch(choix){
case 'm':pu=500;
ttc=qte*pu*(tva+1);
break;
case 'o':pu=100;
ttc=qte*pu*(tva+1);
break;
case 'p':pu=1200;
ttc=qte*pu*(tva+1);
break;
case 't':pu=100;
ttc=qte*pu*(tva+1);
break;
case 'q':
printf("merci de votre visite");
break;
default : printf("Le produit demand? n'existe pas dans nos raon\n");
break;
}
}
total=total+ttc;
nbp++;
printf("Entrer le montant du client\n");
scanf("%d",mtc);
rel=mtc-total;
printf ("Le montant total :%d",total);
printf("vore reliquat est de=%d",rel);
}
int main(){
int choix=menu();
switch(choix)
{
case 1:
printf("Liste des produit\n");
break;
case 2:
printf("saisie code des produits\n");
break;
case 3:
printf("Impression de la facture\n");
break;
case 4:
printf("Quitter le menu\n");
break;
default :
printf("Aucun produit n'a ?t? saisie\n");
break;
}
int total=0;
int facture;
facture=total;
if (total==0) printf("votre facture ne peut etre imprim?e\n");
return 0;
}
Mais à quoi servent :
char [10] m;
char [10] o;
char [10] t;
char [10] p;
listpdt ();
N'étant jamais appelés je les ai supprimés (sauf listpdt).
A propos pour utiliser switch il faut faire comme ça :
switch(ma_variable) {
case 1:
//Mon code//
break;
case 2:
//Mon code//
break;
...
default:
//Mon code//
break;
Je pense que tu souhaite "void listpdt" retourne total à main. Pour celà il faudrait "int listpdt" et ajouter "return total;" à la fin.
Je pense qu'avant de te lancer dans la programmation à des fins personnelles tu devrait lire des tutoriaux tels que ceux que tu peux trouver sur : http://lesouriciergris.free.fr/
ndubien
Messages postés557Date d'inscriptiondimanche 25 septembre 2005StatutMembreDernière intervention10 mai 20144 11 avril 2007 à 17:04
Bonjour,
Je vois tout d'abord une grosse erreur,
lorsque tu met : pu=500
tu oublis d'y ajouter un ;.
Ceci cause l'apparition de messages tels que :
syntax error before ')' token
(sous DEV-C++)
De plus je ne crois pas qu'il s'agisse de C++ mais plutôt de C.
ibnoul
Messages postés6Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention12 avril 2007 11 avril 2007 à 17:11
Merci pour la remarque je vais les ajouter.. c'est un programme en c autant pour moi.
Si tu pourrais le prendre et voir les erreurs que jai commis ça m'aideriass bcp
SAKingdom
Messages postés3212Date d'inscriptionlundi 7 novembre 2005StatutMembreDernière intervention16 février 200915 11 avril 2007 à 19:19
Quand je dis "après le switch", c'est après les parenthèses:
switch(...)
{
...
};
Mettre un ; directement après le switch:
switch(...);
C'est comme dire de ne rien faire du tout pour le switch et le reste,
Exemple:
{
case ...:
break;
...
}
sera interprété sans ce qui génèrera des erreurs assurément.
ibnoul
Messages postés6Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention12 avril 2007 11 avril 2007 à 21:31
Oui mais mon probléme n'est toujours pas réglé j'ai beau changé mais rien il m'indique des erreurs. Quelqu'un pourrai t'il me le corrigé afin de m'aider Merci
ibnoul
Messages postés6Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention12 avril 2007 12 avril 2007 à 01:36
Merci Nico pour le code sauf qu'il me signal juste une erreur a la fin il s'agit de cette ligne
facture=total; (l'erreur est : Undefined symbole 'total'.
j'ai pensé mettre total entre crochet mais ça ne passe pas pourrais tu voir a ton niveau ce que ça donne.
char [10] m;
char [10] o;
char [10] t;
char [10] p;
c'était prevu pour un tableau qui contiendrait 10 pdts vu que tu les a enlevé c pas grave
ibnoul
Messages postés6Date d'inscriptionmercredi 11 avril 2007StatutMembreDernière intervention12 avril 2007 12 avril 2007 à 17:00
Salut! j'ai copié le code integralement et je l'ai ouvert avec mon compilateur mais il m'indique des erreurs. Seriat-il possible d'avoir le dans ma boite l'executable du projet et les fichiers qui y sont rataché merci. l'adresse c'est bbintadiop@hotmail.com Merci