Programmation d'un Distributeur de billets (sous NetBeans)
Fermé
Zephyr88
Messages postés
42
Date d'inscription
jeudi 19 août 2010
Statut
Membre
Dernière intervention
26 février 2015
-
26 févr. 2015 à 15:58
yamdjio Messages postés 90 Date d'inscription lundi 18 août 2014 Statut Membre Dernière intervention 21 mai 2015 - 14 mars 2015 à 16:28
yamdjio Messages postés 90 Date d'inscription lundi 18 août 2014 Statut Membre Dernière intervention 21 mai 2015 - 14 mars 2015 à 16:28
A voir également:
- Programmation d'un Distributeur de billets (sous NetBeans)
- Application de programmation - Guide
- Telecharger netbeans 8.2 - Télécharger - Édition & Programmation
- Comment mettre en veille un programme sous windows 10 - Guide
- Programmer un sms - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
1 réponse
yamdjio
Messages postés
90
Date d'inscription
lundi 18 août 2014
Statut
Membre
Dernière intervention
21 mai 2015
5
14 mars 2015 à 16:28
14 mars 2015 à 16:28
Bonjour
j'ai parcouru ton code et j'ai quelques petites incompréhension:
dans cette partie ci
pourquoi ne pas initialiser tous les compteurs de billets a zéro étant donné que l'utilisateur prend tout l'argent du distributeur???
jette un peu un coup dans la partie suivante:
a (2) par exemple tu utilise encore la variable valeur pourtant elle contient toute la somme a enlever au distributeur,mais la ce n'est pas le plus grave. cet a erreur que tu rend la somme totale negative et que tu obtient les nombres negatif, car tu devrais plutot utiliser la variable reste.
De plus ce n'est pas le reste=valeur%50, car le nombre de piece est limitée. (si on veut enlever 350 alors, en faisant reste=350%50=0, ce qui pose probleme) reste= valeur-(int)(valeur/50) * 50.
De plus encore tu fais la mauvais comparaison pour les diminuer les pieces c'est plutot quelque chose du genre nb_50*50<=valeur, alors on donne toutes les pieces de 50, sinon on donne (valeur/50) pieces de 50.
essaye un peu de faire ces remplacements pour voir ce que tu obtient.
j'ai parcouru ton code et j'ai quelques petites incompréhension:
dans cette partie ci
if (rep.equalsIgnoreCase("oui")){ System.out.println("Distribution de "+sommeTotale+"€"); nbBillets50 -= (int)(sommeTotale/50); reste = sommeTotale % 50; nbBillets20 -= (int)(reste/20); reste = reste % 20; nbBillets10 -= (int)(reste/10); sommeTotale = 0; distrib = true; }
pourquoi ne pas initialiser tous les compteurs de billets a zéro étant donné que l'utilisateur prend tout l'argent du distributeur???
jette un peu un coup dans la partie suivante:
else{ //tester si en enlevant les billets qu'il faut, il y en aura toujours > 0 if(nbBillets50 - (int)(valeur/50) >= 0){ nbBillets50 -= (int)(valeur/50); reste = valeur % 50; sommeTotale -= (int)(valeur/50) * 50; // j'enlève la somme retirée avec les billets de 50 } else{ <gras> (2)</gras> if(nbBillets20 - (int)(valeur/20) >= 0){ nbBillets20 -= (int)(reste/20); reste = reste % 20; <gras> (erreur)</gras>sommeTotale -= (int)(valeur/20) * 20; } else{ <gras> (3)</gras> if(nbBillets10 - (int)(valeur/10) >= 0){ nbBillets10 -= (int)(reste/10); <gras> (erreur)</gras> sommeTotale -= (int)(valeur/10) * 10; // j'enlève la somme retirée avec les billets de 10 } } }
a (2) par exemple tu utilise encore la variable valeur pourtant elle contient toute la somme a enlever au distributeur,mais la ce n'est pas le plus grave. cet a erreur que tu rend la somme totale negative et que tu obtient les nombres negatif, car tu devrais plutot utiliser la variable reste.
De plus ce n'est pas le reste=valeur%50, car le nombre de piece est limitée. (si on veut enlever 350 alors, en faisant reste=350%50=0, ce qui pose probleme) reste= valeur-(int)(valeur/50) * 50.
De plus encore tu fais la mauvais comparaison pour les diminuer les pieces c'est plutot quelque chose du genre nb_50*50<=valeur, alors on donne toutes les pieces de 50, sinon on donne (valeur/50) pieces de 50.
essaye un peu de faire ces remplacements pour voir ce que tu obtient.