Cros_10
21/09/14, 22:48:06
Hola, agradecería mucho si me pueden ayudar, estoy realizando mi primera aplicación en android, es algo muy sencillo, o eso creía. Se trata de adivinar el número.
Se crea un número aleatorio, y luego el usuario debe adivinar cual es. El usuario tiene 3 intentos o si no pierde el juego, el problema es que al intentar colocar un while{} para contar los intentos, si el numero no corresponde al creado al azar, la aplicación "muere".
Pasa con while, doWhile y un for.
Intente, mezclar el while con if o switch pero el resultado es el mismo. Creo que la solución podría estar en que cuente (el contador de intentos) cada vez que hago click al boton y no cuando se cumple o no una de las condiciones pero no se como hacer eso y no he podido encontrarlo por ningún lado.
int intento=0;
int nume = (int) (Math.random()*5);
String resul = "Respuesta correcta el numero era: " +nume ;
String resul2 ="El numero es menor" ;
String resul3="el numero es mayor" ;
String perdio = "fallo sus 3 intentos, juego terminado";
EditText numero = (EditText)findViewById(R.id.editText1) ;
String nombre = numero.getText().toString() ;
int valor = Integer.parseInt(nombre) ;
while(intento<3){
numero.setText("") ;
switch (intento){
case 1: {if (nume==valor) {
textView3.setText(resul);
conta=4; }
;break;}//Fin case 1
case 2 : {if(nume<valor){
textView3.setText(resul2);
intento++ ;
} //fin si !=
;break;} //Fin case 2
case 3: {if(nume>valor){
textView3.setText(resul3);
intento++;
}
;break;}
}//Fin switch
}//Fin while
if (intento==3){
textView3.setText(perdio);
}//fin si intentos
if (conta==4){
textView4.setText("Gano el juego") ;
}
}
ese es el código como está en este momento, tengo otro donde no ocupo un switch solo if pero sucede lo mismo. Si alguien sabe cual o cuales son los errores se lo agradecería mucho. Acepto todo tipo de criticas y ayuda ya que soy nuevo en android y todo me servira. De antemano gracias.
Se crea un número aleatorio, y luego el usuario debe adivinar cual es. El usuario tiene 3 intentos o si no pierde el juego, el problema es que al intentar colocar un while{} para contar los intentos, si el numero no corresponde al creado al azar, la aplicación "muere".
Pasa con while, doWhile y un for.
Intente, mezclar el while con if o switch pero el resultado es el mismo. Creo que la solución podría estar en que cuente (el contador de intentos) cada vez que hago click al boton y no cuando se cumple o no una de las condiciones pero no se como hacer eso y no he podido encontrarlo por ningún lado.
int intento=0;
int nume = (int) (Math.random()*5);
String resul = "Respuesta correcta el numero era: " +nume ;
String resul2 ="El numero es menor" ;
String resul3="el numero es mayor" ;
String perdio = "fallo sus 3 intentos, juego terminado";
EditText numero = (EditText)findViewById(R.id.editText1) ;
String nombre = numero.getText().toString() ;
int valor = Integer.parseInt(nombre) ;
while(intento<3){
numero.setText("") ;
switch (intento){
case 1: {if (nume==valor) {
textView3.setText(resul);
conta=4; }
;break;}//Fin case 1
case 2 : {if(nume<valor){
textView3.setText(resul2);
intento++ ;
} //fin si !=
;break;} //Fin case 2
case 3: {if(nume>valor){
textView3.setText(resul3);
intento++;
}
;break;}
}//Fin switch
}//Fin while
if (intento==3){
textView3.setText(perdio);
}//fin si intentos
if (conta==4){
textView4.setText("Gano el juego") ;
}
}
ese es el código como está en este momento, tengo otro donde no ocupo un switch solo if pero sucede lo mismo. Si alguien sabe cual o cuales son los errores se lo agradecería mucho. Acepto todo tipo de criticas y ayuda ya que soy nuevo en android y todo me servira. De antemano gracias.