Problème de programme

keriatsu Messages postés 11 Statut Membre -  
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour

J'ai crée un programme tout simple qui calcule un prix toutes taxes comprises d'un prix hors taxe.

Mon problème est que quand le programme s'execute il me met que le prix toute taxes comprises est de 0.00 euro.

Voici le script.

#include<stdlib.h>
#include<stdio.h>
int main()
{
int TVA = 19;
int sucette, total;
sucette = 1;
total = sucette (1 + TVA / 100);
printf("une sucette hors taxe de %.d euro coutera %.2f euro toutes taxes comprises\n", sucette, total);
system("pause");
return 0;
}
A voir également:

5 réponses

Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Et ça compile ?! oua !
sucette (1 + TVA / 100) veux dire que tu donne 1+TVA/100 en argument à la fonction sucette, qui n'est pas défini ! Logique que ça ne fonctionne pas.
utilise : sucette*(1 + TVA / 100)
Et encore, ça devrai être faut, car tu utilise des entier ! 19/100=0 !
donc : float(TVA)/100.0
Je te conseil de compiler avec l'option -Wall si tu peux
0
keriatsu Messages postés 11 Statut Membre 2
 
en fait je débute donc je suis pas très bon.

Donc plusieurs questions (je suis pas très doué donc désolé de vous importuner)
C'est quoi l'option -Wall et ou je peux la trouvé ?
Et aussi je le met ou le float parce que j'ai essayé dans tout les sens et soit il me trouve une erreure, soit il me met le prix = 0.00
0
Stupeflip Messages postés 391 Date d'inscription   Statut Membre Dernière intervention   94
 
Salut,

-Wall est une option de compilation pour montrer tous les warnings (all warnings en fait)
Il faut ajouter cette option avec les options de compilation.
Pour le float, tu peux aussi faire
(float)TVA
Ca "forcera" TVA à être un flottant pour ce calcul (/100)

Bon courage

0
christboy Messages postés 157 Statut Membre 20
 
encore plus simple ... regle le probleme de la taxe en la mettant a 19.6 ~~
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Arf ! c normal que ça affiche zero, dans le printf tu met %f pour un int !
mon conseil : vire les int et remplace par des float ou des double. ça devrai fonctionner après. (et met des %f ou %e dans le printf)
0