Olá pessoal
Bom… mais uma dúvida simples mas acho que estou com um erro de lógica aqui… estou tentando fazer um jogo de batalha naval, primeiro quis fazer uma versão bem básica, do tipo que é mostrado no Use a Cabeça! mas quis fazer meio diferente… o problema é que se eu testo os acertos, ele não termina na terceira tentativa! e nunca aparece “navio afundado” ou seja… o if mais aninhado não está sendo lido… sei lá por que…
import java.util.*;
class TesteBatalhaNaval {
public static void main (String args[]){
Scanner scn = new Scanner (System.in);
int [] CEL = {1,2,3};
int num, x = 0;
System.out.println("Digite seu palpite");
while (x <4) {
num = scn.nextInt();
if ((num == CEL[0]) || (num == CEL[1]) || (num == CEL[2])) {
System.out.println("Você acertou!");
int i = 0;
i += 1;
if(i == 3){
System.out.println("Você afundou o navio!");
break;
}
} else {
System.out.println("Você errou.");
}
x += 1;
}
System.out.println("JOGO TERMINADO!");
}
}
o que acontece? 