Partage
  • Partager sur Facebook
  • Partager sur Twitter

je croit que jai le mauvais signe

    2 mars 2015 à 18:08:05

    Bonjour jai fais ce petit bout de code pour me pratiquer avec les boucles while et il y je croit quelque chose que je ne comprend pas. A la ligne 12 je croit bien avoir marquer que tant que les information entrer ne sont pas celle ci la boucle se refais et redemende les information a lutilisateur je suis content tout marche a lexeption que il faut avoir toute les reponse pas bonne pour que la boucle se refasse si il ya une information de correct la boucle se termine donc si vous voulez bien maidez j'en serais reconnaisant:

    p.s : si vous pouviez faire comme si javais 5 ans d'age mental a me l'expliquant clairement le pourquoi sa serais apprecier merci

    import java.util.Scanner;
    
    	public class sdz1 
    	{
    		public static void main(String[] args)
    			
    		{
    			String prenom = " " , nomDeFamille = " " , ville = " ", pays = " " , codePostal = " ";
    				
    			Scanner sc = new Scanner(System.in);
    				
    			while(!"jean".equals(prenom) && !"gauthier".equals(nomDeFamille) && !"montreal".equals(ville) && !"canada".equals(pays) && !"j666666".equals(codePostal))
    			{	
    				//Nom ,prenom , ville, code postal, pays etc...
    				System.out.println("donner votre prenom: ");
    				prenom = sc.nextLine();
    				System.out.println("donner votre nom de famille: ");
    				nomDeFamille = sc.nextLine();
    				System.out.println("Quelle est votre ville? ");
    				ville = sc.nextLine();
    				System.out.println("Quelle est votre pays? ");
    				pays = sc.nextLine();
    				System.out.println("Quelle est ton code postal? ");
    				codePostal = sc.nextLine();
    				System.out.println("Votre nom complet est: " +prenom+" " +nomDeFamille+ "\nvotre ville est: " +ville+ " \nVotre pays est: " +pays+ " \nVotre code postal est: " +codePostal);
    				
    				if(!"jean".equals(prenom) && !"gauthier".equals(nomDeFamille) && !"montreal".equals(ville) && !"canada".equals(pays) && !"j666666".equals(codePostal))
    				{
    					System.out.println("\n\n\nveuillez entrer les bonne information\n\n\n");
    				}
    				
    				else
    				{
    					System.out.println("Merci d'avoir donne vos vrais informations");
    				}
    			}
    
    		}
    			
    	}



    -
    Edité par korked 2 mars 2015 à 18:12:55

    • Partager sur Facebook
    • Partager sur Twitter
      2 mars 2015 à 18:40:11

      Tu peux utiliser un boolean qui est initialisé à faux, ta boucle continuerait tant que le boolean est faux et ton boolean passerait à vrais dans ta structure conditionnelle.

      Ça donnerait un truc du genre :

      String prenom;
      boolean bonneSaisie = false;
      while(!bonneSaisie)
      {
        prenom = sc.nextLine();
        if(prenom.equals("toto"))
          bonneSaisie = true;
      }



      -
      Edité par LeSuricateFurtif 2 mars 2015 à 18:45:26

      • Partager sur Facebook
      • Partager sur Twitter
      Un de ces quatre, viens faire un tour sur Zeste de Savoir !
        2 mars 2015 à 18:45:31

        Replace les && par des ||

        Ca donnera ainsi "tant que le prénom n'est pas égal à jean ou que le nom n'est pas égal à gauthier ou que la ville n'est pas égale à Montréal ..."

        Si tu mets des ET dès que ta condition va être évalué à true, ça va s’arrêter, style : "le prenom n'est pas égal à jean mais le nom est égal à gauthier"

        C'est juste de la logique de boole en somme ^^

        • Partager sur Facebook
        • Partager sur Twitter

        je croit que jai le mauvais signe

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown