2014-06-08 4 views
-1

Débutant dans Java ici.System.out.println - Erreur de syntaxe

Vous essayez de comprendre pourquoi j'obtiens une erreur de syntaxe sur les deux derniers System.out.println.

J'ai essayé de déplacer mes supports, mais je me retrouve avec une boucle sans fin.

J'apprécie toute votre aide à l'avance!


import java.util.Scanner; 

public class GuessingGame 
{ 

    public static void main(String args []) 
    { 
     Scanner scan = new Scanner (System.in); 

     int random = (int) (Math.random()*20 +1); 
     int numberOfAttempts = 0; 
     boolean win = false; 

     while (win == false) 

      System.out.println("Guess the number (1 - 20)"); 
      int guess = scan.nextInt(); 
      numberOfAttempts++; 

      if (guess == random) 
       win = true; 
      else if (guess < random) 
       System.out.println("Your guess was low. Guess again."); 
      else 
       System.out.println("Your guess was high. Guess again."); 
    } 

      System.out.println("You guessed right! It took you guesses."); 
      System.out.println("Do you want to play again? (yes or no)"); 

} 
+0

Vous devez mettre en retrait votre code correctement. Qu'est-ce qui est considéré comme le corps d'une boucle while? Vote pour fermer pour erreur typographique. –

+0

Merci. J'essaie toujours de comprendre les problèmes d'indentation. Le corps des boucles while devrait être le "Devinez le nombre" dans lequel le jeu de devinette s'exécute. – CLTMedic

+0

1. Utilisez des accolades pour chaque for/if/while/méthode/switch/class/etc. 2. Comptez vos accolades, chaque attelle d'ouverture devrait avoir une accolade de fermeture –

Répondre

1

Votre ne pas ouvrir la boucle while. Vous avez besoin de crochets après le temps

while (win == false){ 
//need one at the beginning 

     System.out.println("Guess the number (1 - 20)"); 
     int guess = scan.nextInt(); 
     numberOfAttempts++; 

     if (guess == random) 
      win = true; 
     else if (guess < random) 
      System.out.println("Your guess was low. Guess again."); 
     else 
      System.out.println("Your guess was high. Guess again."); 
} //and at the end 
+0

Fantastique! Merci beaucoup. Seulement dans la semaine 3 de ce cours Java! Marquage comme résolu. – CLTMedic