Dernier message de la page précédente :
je sais bien, mais vu les prix je pense reprendre un Maxtor, j'espère que j'aurais plus de déconvenuesil me servira pour mon futur ordi
si mais je ne suis pas chez moi là![]()
c'est tout bête dès que je rentre je t'explique
ok merci poto
tu rentres les informations concernant ton ftp tu enregistres et quittes
#include <stdio.h>
#define NBART 6
typedef struct { int code ;
char * lib ;
float pu ;
} t_article ;
t_article article [NBART] =
{ 11, "unité centrale", 350.0,
14, "écran", 125.0,
16, "imprimante", 120.0,
19, "clavier", 15.0,
25, "souris", 10.0,
26, "tapis", 7.50
} ;
/*-----------------------------------------*/
#define NAFMAX 10
main()
{
int recherche(int);
void facture(int[], int[], int);
int naf,
rang,
codart,
i;
int rangart [NAFMAX],
qte [NAFMAX];
clrscr();
printf("nCombien d'articles à facturer ? ");
scanf("%d", &naf);
<span style='color:red'>for (i=0; i>naf; i++);
{
printf ("ncode article ? ");
do
{ scanf ("%d", &codart);
rang = recherche (codart);
if (rang == -1)
printf ("narticle inexistant, redonnez le code : ");
}
while (rang == -1);
rangart = rang;
printf("nquantité de %s au prix unitaire de %8.2f ? ",
article[rang].lib, article[rang].pu);
scanf("%d", &qte);
}</span>
facture (rangart, qte, naf);
getch();
}
/*fontion de recherche d'un code article*/
int recherche (int codart)
{
int rang;
rang = 0;
while (article[rang].code != codart && rang++ < NBART-1) {};
if (rang < NBART) return (rang);
else return (-1);
}
/*fonction d'affichage de la facture*/
void facture(int rangart[], int qte[], int naf)
{
float somme,
montant;
int i;
printf("nn %32snn", "FACTURE");
printf("%-20s%5s%10s%12snn", "ARTICLE", "NBRE", "P-UNIT", "MONTANT");
somme = 0;
for (i=0; i<naf; i++)
{
montant = article[rangart].pu * qte;
printf("%-20s%5d%10.2f%12.2fn",
article[rangart].lib, qte, article[rangart].pu, montant);
somme += montant;
}
printf("nn%-35s%12.2f", "TOTAL", somme);
}
Les instructions sont avant en fait. J'ai utilisé la structure "do { instruction } while...", normalement ça doit pas poser de problème !ça vient pas du While ?
t'as pas mis les instructions qu'il doit faire si la condition est réalisée...
Je pense que le problème vient de ma boucle en rouge... Mais ça n'empêche que je vois pas plus d'où ça vient ! ;-)</span><span style='color:red'>for (i=0; i>naf; i++);
{
printf ("ncode article ? ");
do
{ scanf ("%d", &codart);
rang = recherche (codart);
if (rang == -1)
printf ("narticle inexistant, redonnez le code : ");
}