Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1489 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Aide programme java

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide programme java

n°2248540
julienr66
Posté le 15-01-2015 à 23:03:42  profilanswer
 

Bonsoir, je suis en Ts option ISN ,  
j'ai un programme a faire qui correspond a la simulation d'un client qui rentre dans un magasin,  
voici l'énoncer :  
 
Cahier des charges :
5 produits en vente : pain , eau , fruits, savon, pâtes
prix respectifs : 1€, 0,50€, 2€50, 2€, 0,75€
quantités : 50, 40, 20,10, 60.
Le client choisit ce qu'il veut, avec des quantités variées. À chaque produit acheté, le vendeur lui
propose s'il veut autre chose.
Un ticket sort avec les produits, les quantités, le prix à l'unité et le prix total.
Il paie et on doit lui rendre la monnaie.
Sécurité : ne peut acheter plus que le stock du magasin.
1
 
 
 
 
 
 
Pour le moment voici mon programme :  
 
import java.util.Scanner;
// N'ayant pas réussit la boucle de ré-édition de demande, notre programme se limite à la demande d'un produit, mais nous n'avont pas arreté de chercher.
 
public class LEPICERIE {
 
  static void Hello(){
   System.out.println("-------------------------------------------------------------------" );
   System.out.println("Bonjour ! bienvenue dans notre magasin" );
   System.out.println("-------------------------------------------------------------------" );
  }
   
   
  public static void main(String[] args) {
       
   Hello();
   
   Scanner dlc=new Scanner(System.in);
   
   String oui="oui";
   String non="non";
   String choix3;
   String choix4;
   double max;
   double maxi;
   double maximum;
   
   
   do {System.out.println("Voulez-vous quelque chose?" );
   choix3=dlc.nextLine();}
   while(!choix3.equalsIgnoreCase(oui)&&!choix3.equalsIgnoreCase(non));
   if (choix3.equalsIgnoreCase(oui)){{  
   
  do {System.out.println("Choisissez un produit à acheter parmi les suivants:" );
  for (int i=0;i<5;i++){
   double [] quantites;
   quantites=new double[5];
   quantites[0]=50;
   quantites[1]=40;
   quantites[2]=20;
   quantites[3]=10;
   quantites[4]=60;
   
   double [] tarif;
   tarif= new double[5];
   tarif[0]=1.00;
   tarif[1]=0.50;
   tarif[2]=2.50;
   tarif[3]=2.00;
   tarif[4]=0.75;
   
   String []stock;
   stock= new String[5];
   stock[0]="pain  ";
   stock[1]="eau   ";
   stock[2]="fruits";
   stock[3]="savon ";
   stock[4]="pâtes ";
   
   
   
   {
    System.out.println((i+1)+":"+stock[i]+"     prix: "+tarif[i]+"euros  quantite: "+quantites[i]);
   }}
   
 
  double choix1=dlc.nextDouble();
  System.out.println("votre choix: \n"+ choix1);
   
  if (choix1==1){max=1.00;}
  else{ if (choix1==2){max=0.50;}
  else{if(choix1==3){max=2.50;}
  else{if(choix1==4){max=2.00;}
  else{max=0.75;}}}}
 
   
  System.out.println("quelle quantitée en voulez_vous?" );
  double choix2=dlc.nextDouble();
  System.out.println("votre choix: \n"+ choix2);
 
  /*if (choix1==1){quantites[0]=(quantites[0]-choix2);}
  else{ if (choix1==2){quantites[1]=(quantites[1]-choix2);}
  else{if(choix1==3){quantites[2]=(quantites[2]-choix2);}
  else{if(choix1==4){quantites[3]=(quantites[3]-choix2);}
  else{quantites[4]=(quantites[4]-choix2);}}}} -----> Etait ma solution pour bloquer les quantités, cependant ces dernières sont fermer par les crochets et ne sont donc pas reconnut.*/
   
  maxi=max*choix2;
   
  System.out.println("vous allez payez: "+maxi+" euros pour ce(s) article(s)" );
   
   
  System.out.println("Voulez-vous autre chose? \n" );      
  choix4=dlc.nextLine(); }
  while(choix4.equalsIgnoreCase(oui));}
   
  // après plusieurs essaie je ne vois pas comment faire marcher ma boucle de ré-édition de la demande. vous verrez dans la sortie de commande la question Voulez-vous autre chose? suivit directement la suite du programme...
   
   
   
   
   
   
   
   
   
  System.out.println(" Entrez le montant avec lequel vous allez payer:" );
  double montantapayer=dlc.nextDouble();
  System.out.println(montantapayer);
  double rendu=montantapayer-maxi;
  System.out.println("rendu (En euros):"+rendu );
  System.out.println("Merci, bonne fin de journée à vous, et à bientôt dans notre magasin" );}
   
   
   
   
   else System.out.println("Vous avez dit de rien vouloir acheter. \n Merci d'être venu, au revoir et à bientôt" );}
   
   
   
}
 
 
 
 
 
 
Cependant, j'ai plusieurs choses que je n'arrive pas a comprendre, ( géneralement ce qui est en commentaire ), Pourquoi ma boucle do while ne fonctionne pas?
Comment faire pour gerer la sécurité des stocks? et si jamais ces deux questions résolus, Comment doit-je faire pour que Si le client souhaite racheter quelque chose, ma variable maxi s'additionne pour pouvoir la mettre dans le ticket de caisse final?
 
 
Merci pour quiquonce qui pourrait m'aider !  :hello:

mood
Publicité
Posté le 15-01-2015 à 23:03:42  profilanswer
 

n°2248764
Bidem
Posté le 19-01-2015 à 18:16:20  profilanswer
 

Le 1er problème est que tu initialise les quantités, le stock et les prix dans la boucle. C'est pour ça que plus tard tu ne peux pas mettre à jour les quantités.
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Aide programme java

 

Sujets relatifs
Aide pour programme javaa l'aide pour un projet
Exercice JavaC++ builder 6 et l'aide sur windows seven
comment indiquer une varial dans une url - besoin d'aide - mercibesoin d'aide pour un programme java (urgent =x )
[JAVA] aide compilation d'un programme[Java] Aide pour un programme
aide pour un programme JAVA (débutante)Urgent Besoin d'aide pour finaliser un programme ORACLE/JAVA sur lyon
Plus de sujets relatifs à : Aide programme java


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR