bonjour,
je dois faire un programme qui calcule le nombre de billet et de piece necessaire pour faire une somme, je l'avait fini et je croyai kil fonctionnais mais en le testant une derniere fois, j'ai vus qu'il ne prenait pas en compte les nombres tel 0.01
J'aimerai savoir si il y a une solution ?
Je dois rendre mon programme demain a 14h00
Voici le code de mon programme :
#include <stdio.h>
#include <conio.h>
main ()
{
float s=0.00; //Introduction De La Variable s Pour La Somme A Calculer
int b500=0, b200=0, b100=0, b50=0, b20=0, b5=0, p2=0, p1=0, p05=0, p02=0, p01=0, p005=0, p002=0, p001=0; //Introduction Des Variables De Chaque Type De Billet Et Pièce
printf("Calculateur du nombre de billets et de pieces necessaire\n\n");
printf("Introduisez une somme d'argent au format xx.xx : ");
scanf("%f",&s);
while(s>0)
{
if (s-500>=0)
{
b500++;
s=s-500;
}
else
{
if (s-200>=0)
{
b200++;
s=s-200;
}
else
{
if (s-100>=0)
{
b100++;
s=s-100;
}
else
{
if (s-50>=0)
{
b50++;
s=s-50;
}
else
{
if (s-20>=0)
{
b20++;
s=s-20;
}
else
{
if (s-5>=0)
{
b5++;
s=s-5;
}
else
{
if (s-2>=0)
{
p2++;
s=s-2;
}
else
{
if (s-1>=0)
{
p1++;
s=s-1;
}
else
{
if (s-0.5>=0)
{
p05++;
s=s-0.5;
}
else
{
if (s-0.2>=0)
{
p02++;
s=s-0.2;
}
else
{
if (s-0.1>=0)
{
p01++;
s=s-0.1;
}
else
{
if (s-0.05>=0)
{
p005++;
s=s-0.05;
}
else
{
if (s-0.02>=0)
{
p002++;
s=s-0.02;
}
else
{
if (s-0.01>=0)
{
p001++;
s=s-0.01;
}
else
{
s=0;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
printf("Pour cette somme, il vous faut : \n%d billet de 500 \n%d billet de 200 \n%d billet de 100 \n%d billet de 50 \n%d billet de 20 \n%d billet de 5 \n%d piece de 2 \n%d piece de 1 \n%d piece de 50 cents \n%d piece de 20 cents \n%d piece de 10 cents \n%d piece de 5 cents \n%d piece de 2 cents \n%d piece de 1 cents",b500,b200,b100,b50,b20,b5,p2,p1,p05,p02,p01,p005,p002,p001);
getch();
}