dúvidas sobre o código

2 respostas
A
public class GuessGame { 
  Player p1;
  Player p2;
  Player p3;

 public void startGame() {
  p1 = new Player();
  p2 = new Player();
  p3 = new Player();

  int guessp1 = 0;
  int guessp2 = 0;
  int guessp3 = 0;

  boolean p1isRight = false;
  boolean p2isRight = false;
  boolean p3isRight = false;

  int number = (int) (Math.random() * 10);
  System.out.println("Estou pensando em um número entre 0 e 9...");

while(true) {

 System.out.println("O número a adivinhar é " + number);

 p1.guess();
 p2.guess();
 p3.guess();

 guessp1 = p1.number;
 System.out.println("O jogador um forneceu o palpite " + guessp1);
 guessp2 = p2.number;
 System.out.println("O jogador dois forneceu o palpite " + guessp2);
 guessp3 = p3.number;
 System.out.println("O jogador três forneceu o palpite " + guessp3);

 if (guessp1 == number) {
     p1isRight = true;
 }
 if (guessp2 == number) {
     p2isRight = true;
 }
 if (guessp3 == number) {
     p3isRight = true;
 }

 if (p1isRight || p2isRight || p3isRight) { 

     System.out.println("Temos um vencedor!");
     System.out.println("O jogador um acertou? " + p1isRight);
     System.out.println("O jogador dois acertou? " + p2isRight);
     System.out.println("O jogador três acertou? " + p3isRight);
     System.out.println("Fim do jogo.");
     break;
 } else {
     System.out.println("Os jogadores terão que tentar novamente.");
    } // fim de else
   } // fim do loop
  } // fim de startgame
 } // fim da classe guessgame

Bom minha dúvida é o loop while vai rodar enquano oq for true?
a segunda é para gerar o numero aleatorio o comando "random" n devia ficar dentro do loop ?

2 Respostas

davidbuzatto

Esse true dentro do while significa que o while vai ser um loop infinito, ou seja, ele vai ser executado o tempo todo, sendo apenas quebrado quando for usado um break nesse caso.

Já o número, pela lógica do programa, só vai ser recriado quando executar o startGame de novo. Imagina se teria lógica vc sortear um número a cada iteração do while? Seria difícil adivinhar concorda?

Até mais!

A

hum t[á certo valeu cara.

Criado 5 de agosto de 2007
Ultima resposta 5 de ago. de 2007
Respostas 2
Participantes 2