2
Good night, I wonder if there is a way to declare a 'FOR' within a SWITCH CASE in Java because Netbeans is making an error right here. I’m trying to make an application to perform a guessing game just like I read on the site
http://www.vivendoentresimbolos.com/2012/07/o-truque-da-adivinhacao-egipcia.html
I’m going to post the entire code for evaluation by the most experienced. I would like opinions on the operation as a whole should they find any fault.
package advinhacao;
import java.util.Scanner;
/**
* By Lucas Menchone
*/
public class Advinhacao {
public static void main(String[] args) {
boolean fim;
String resposta;
int numero,
i,
caso,
resultado;
resultado = 0;
numero = 1;
i = 1;
fim = false;
System.out.printf("Jogo da advinhação\n pense em um número entre 10 a 100. \n"
+ "O computador irá perguntar várias vezes se seu numero é par ou impar.\n"
+ "A cada vez que for impar, mentalmente subtraia uma unidade do numero e depois divida-o por 2\n"
+ "A cada vez que for par, divida mentalmente o numero por 2\n"
+ "O jogo termina quando o resultado final das suas contas for 1");
while (fim == false) {
int soma[] = new int[i];
Scanner entrada = new Scanner(System.in);
System.out.println("O numero é impar ? digite 1 se sim, 2 se n ou 3 se o valor final resultou 1");
resposta = entrada.nextLine();
caso = Integer.parseInt(resposta);
switch (caso) {
case 1:
numero -= 1;
numero /= 2;
soma[i] = numero;
i++;
break;
case 2:
numero /= 2;
break;
case 3:
for (i !== 0, i-- ) //NESTE 'FOR' ESTA DANDO "';' EXPECTED" e eu não tenho ideia de onde faltou ';' aqui ou se realmente eu estou fazendo algo q n posso
{
resultado += soma[i];
}
fim = true;
System.out.println(resultado);
break;
default:
System.out.println("opção não disponível, por favor selecione 1,2 ou 3");
}
}
}
}
Semantic error this. cloque o
;
that solves.– user28595
but I have never seen put ';' in FOR, because it opens and closes with '{', so in this situation it is unlikely
– Lucas_Menchone
As far as I know, in almost all languages, FOR follows this structure. " for (x=y;x<z;x++){." With ";". I don’t know if this "variation" with "," works in java. But I’m pretty sure it doesn’t.
– mau humor