Besoin d'aide c++

Bonjour,
spv il y'a quelque chose qui n'est pas correcte dans ce programme et je n'arrive pas à le detecter

#include <stdio.h>

float taux(char x){
float ttva;
if(x=='A') ttva=0.25;
else if(x=='B') ttva=0.20;
else if(x=='C') ttva=0.05;
return ttva;
}

char lirechar(){
char y;
getchar();
while(y!='a' && y!='b' && y!='c'){
printf(" veuillez tapez le type de classe [A / B / C] :");
scanf("%c",&y);
}
return y;
}

float calculprix(float q, float pu, char x){
float mttc ,tva, phtx,ttva;
ttva=taux(x);
phtx=q*pu;
tva=phtx*ttva;
mttc=phtx+tva;

return mttc;
}

void main(){
float mottc,pu,q;
char c;

printf(" entrer la quantitee :");
scanf("%f",&q);
printf(" entrer le prix unitaire :");
scanf("%f",&pu);
c=lirechar();
mottc=calculprix(q,pu,c);
printf(" le montant ttc est .........%f\n",mottc);
}

merci d'avance
Configuration: Windows XP
Internet Explorer 7.0

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Ton probleme c'est que dans la fonction Taux() tu dois changer les lettres de x en miniscule parce que le langange C est sensible à la casse:

    float taux(char x){
    float ttva;
    if(x=='a') ttva=0.25;
    else if(x=='b') ttva=0.20;
    else if(x=='c') ttva=0.05;
    return ttva;
    }


    p.s. ça c'est du langage C!!
    1. salut y'a pas de message erreur c'est juste que le resultat est erroné ça donne du n'importe koi
      1. Ton probleme c'est que dans la fonction Taux() tu dois changer les lettres de x en miniscule parce que le langange C est sensible à la casse:

        float taux(char x){
        float ttva;
        if(x=='a') ttva=0.25;
        else if(x=='b') ttva=0.20;
        else if(x=='c') ttva=0.05;
        return ttva;
        }

        p.s. ça c'est du langage C!!
    2. yeeeees merciiiiiiii mister progfann vous avez raison j'ai pas fait attention a la casse