Programmation en C

Fermé
ahito Messages postés 6 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 18 novembre 2010 - 12 nov. 2010 à 11:15
ahito Messages postés 6 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 18 novembre 2010 - 18 nov. 2010 à 12:37
Bonjour,
j'aimerais recevoir une aide pour traiter ce exercice:
Une banque CIB désire mettre à la disposition de sa clientèle un automate à l'état certain et fini. Cet automate est chargé de décaisser de l'argent en fonction du montant demandé par le client. L'automate ne reconnait que les billets de 1000F, 2000F, 5000F et 10000F.
Ecrire un permettant de réaliser ce projet.
Contraintes: L'automate ne peut fournir des pièces.
Modifier le ,programme précédent de telle sorte que le système se conforme au montant initial de la caisse.
Le système doit minimiser le nombre de billets utilisés.
Merci de m'aider.


1 réponse

dna.factory Messages postés 25385 Date d'inscription mercredi 18 avril 2007 Statut Modérateur Dernière intervention 2 décembre 2024 1 613
Modifié par dna.factory le 12/11/2010 à 11:31
de l'aide, c'est quand tu nous propose ce que tu as fais, et tu nous demande ce qu'on en pense.
ici ça s'appelle faire à ta place
et nous, on ne fais pas les devoirs des faineants à leur place
Stop failing the turing test !
0
ahito Messages postés 6 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 18 novembre 2010
18 nov. 2010 à 12:37
Voici ce je propose:

#include<stdio.h>
#include<math.h>
#include<conio.h>
long smd;
long mtc;
long bd, bc, bdx, bm, nvmtc;
int rest1, rest2, rest3;
main()
{
long nbd,nbc, nbdx, nbm;
nbd=50;
nbc=300;
nbdx=1000;
nbm=3000;
mtc=nbd*10000+nbc*5000+nbdx*2000+nbm*1000;
printf("Entrez la somme demand'e:\n");
scanf("%d",&smd);
int mm;
mm=smd%1000;
if(mm==0 && smd<mtc)
{
bd=smd/10000;
rest1=smd%10000;
bc=rest1/5000;
rest2=rest1%5000;
bdx=rest2/2000;
rest3=rest2%2000;
bm=rest3/1000;
nbd=nbd-bd;
nbc=nbc-bc;
nbdx=nbdx-bdx;
nbm=nbm-bm;
printf("Reste de billets %d de 10000 %d de 5000 %d de 2000 %d de 1000.\n", nbd, nbc, nbdx, nbm);
printf("Vous aurez %d billet de 10000 %d billet de 5000 %d billet de 2000 %d billet de 1000:\n", bd, bc, bdx, bm);
nvmtc=mtc-smd;
printf("Votre nouveau solde est de %d:\n", nvmtc);
}
else
{
printf("Paiement impossible.\n");
}
getch();
return 0;
}
0