Lang c

njl -  
Steefif Messages postés 526 Statut Membre -
bonsoir a tout
j'ai un probléme dans ce code là (le probléme c que pendant l 'exécution le programme ne retourne pas la valeur de TTC il ne retourne que des zéros .mon code est le suivant:

#include <stdio.h>
#include <stdlib.h>
#define tva 0.02
float pu,qt,mht,remise,mtva,ttc;
int main(int argc, char *argv[])
{
printf(" entrez votre quantite\n");
scanf("%d",&qt);
printf(" entrez pris unitaire\n");
scanf("%f",&pu);
mht=pu*qt;
if(mht<1000)
{remise=0;}
else if(mht>1000 && mht<3000)
{remise=0.2;}
else if(mht>3000 && mht<6000)
{remise=0.4;}
else
{remise=0.06;}
mtva=tva*mht;
mht=mht-remise;
ttc=mtva+mht;
printf(" le taux taxe comprise est:%.2f\n",ttc);
system("PAUSE");
return 0;
}
merci à l'avance

2 réponses

  1. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
     
    attention :

    scanf("%d",&qt);

    qt est un float. Soit tu fais %f, soit tu déclares qt comme un int (ce qui serait plus logique, mais c'est un choix)

    autre petite remarque à coté : fait attention, si mht vaut exactement 1000 ou exactement 3000 la remise est à 0.06 !

    de plus la manière dont tu calcules la remise est bizarre... et "taux taxes comprise", tu voulais dire "le prix toutes taxes comprises" non ?
    0
  2. Steefif Messages postés 526 Statut Membre 19
     
    #include <stdio.h>
    #include <stdlib.h>
    #define tva 0.02 /*0.196 en theorie */
    INT QT
    float pu,mht,remise,mtva,ttc;
    int main(int argc, char *argv[])
    {
    printf(" entrez votre quantite\n");
    scanf("%d",&qt);
    printf(" entrez priX unitaire\n");
    scanf("%f",&pu);
    mht=pu*qt;
    if(mht<1000)
    {remise=0;}
    else if(mht>= /*ajout de >=*/ 1000 && mht<3000)
    {remise=0.2;}
    else if(mht>= /*ajout de >=*/ 3000 && mht<6000)
    {remise=0.4;}
    else
    {remise=0.06;}
    mtva=tva*mht; /*calcul de la tva sur le prix normal*/
    mht=mht-remise; /*clacul du prix une fois remise
    ttc=mtva+mht; /*la tu fait prix = prix avec remise + tva sans remise c'ets bizarre*/
    printf(" le PRIX taxe comprise est:%.2f\n",ttc);
    system("PAUSE"); /* si c'est du c je vois pas l'interet ==> affichage console */
    return 0;
    }
    0