Simulation Retrait Bancaire. (Java-Eclipse) [Fermé]

Signaler
Messages postés
1
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
16 décembre 2015
-
Messages postés
592
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
3 juin 2017
-
Bonjour à tous,

Je rencontre un soucis lorsque j'active ce code Java sur Eclipse. Le programme s'arrête à cette ligne " a = Lire.nextLine(); " si le montant entré est supérieur à 10 euros.

Pouvez-vous m'aider à mieux comprendre la raison cet événement.

Merci par avance

Bien cordialement
Rachid




import java.util.Scanner;


public class RetraitBancaire2 {

static Scanner Lire = new Scanner(System.in);

public static void main(String[] args){


double x = 10;
double y;
String oui = "oui";
String non = "non";
String a;


System.out.println("Entrer le montant à retirer");
y = Lire.nextDouble();

if( y > 10){

System.out.println("Vous avez dépassé votre solde ");
System.out.println("Souhaitez vous dépasser votre Solde ? OUI ou NON : ");
a = Lire.nextLine();

if( a.equals(oui)){


x = x - y;
System.out.println("Le nouveau solde de votre compte est de : " + x);


}else if(a.equals(non)){

System.out.println("Merci pour votre réponse \n A bientôt !");

}

}else if(y == 0 && y < 10){
x = x - y;
System.out.println("Votre nouveau montant est de : " + x);
}

}






}






1 réponse

Messages postés
592
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
3 juin 2017
104
Hello, il fallait utiliser la fonction
Lire.next()
au lieu de
Lire.nextLine()
. Je ne vois pas trop pourquoi elle ne fonctionnait pas cependant. Dans le code en dessous j'ai aussi modifier ta condition
a.equals(oui)
en
a.equalsIgnoreCase("oui")
afin que la casse ne soit pas un soucis car si l'utilisateur rentre oui de manière différente ton programme s'arrête.

import java.util.Scanner;


public class RetraitBancaire2 {

 static Scanner Lire = new Scanner(System.in);

 public static void main(String[] args){


  double x = 10;
  double y;
  String a;


  System.out.println("Entrer le montant à retirer");
  y = Lire.nextDouble();

  if( y > 10){

   System.out.println("Vous avez dépassé votre solde ");
   System.out.println("Souhaitez vous dépasser votre Solde ? OUI ou NON : ");
   a = Lire.next();
   if( a.equalsIgnoreCase("oui")){


    x = x - y;
    System.out.println("Le nouveau solde de votre compte est de : " + x);


   }else if(a.equalsIgnoreCase("non")){

    System.out.println("Merci pour votre réponse \n A bientôt !");

   }

  }else if(y == 0 && y < 10 || y == 10){
   x = x - y;
   System.out.println("Votre nouveau montant est de : " + x);
  }

 }






} 


PS: Pense à utiliser la balise code :)
En espérant t'avoir aider
Greg