Java - Ingreso por teclado

   
Vista:

Ingreso por teclado

Publicado por Alejandro (7 intervenciones) el 13/08/2016 02:12:22
Hola que tal. Tengo un problema en el codigo. En el bucle, cuando pregunto si quiere ingresar el radio de otro perimetro, en la consola no me deja escribir. Es decir, cuando ejecuto el programa, me pide el radio, hasta ahi todo bien, el apuntador queda parpadeando, esperando a que ingrese el radio, lo ingreso, luego calcula el perimetro. Y cuando me pide si quiero ingresar otro radio, no aparece el apuntador parpadenado, por lo tanto no puedo ingresar nada, y el programa termina. Donde dice rpta = tecla.nextLine(); le cambio por nextDouble, y modifico todo el codigo para que ingrese un numero en ves de SI o NO, y el bucle funciona, pero si pongo como string, y le vuelvo a poner nextLine, me salta el fallo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;
 
public class CircunferenciaPunto7
{
    public static void main (String[] args){
        Scanner tecla = new Scanner (System.in);
        double radio;
        double perimetro;
        String rpta = "s";
 
        while (rpta == "s" || rpta == "S") {
            System.out.print ("Radio: ");
                radio = tecla.nextDouble();
 
            perimetro = Math.PI * Math.pow (radio, 2);
 
            System.out.println ("Perimetro: "+perimetro);
 
            System.out.print ("Calcular el perimetro de otra circunferencia?: S/N ");
                rpta = tecla.nextLine();
        }
    }
}


Si no me explique bien, les comento mejor.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Ingreso por teclado

Publicado por xve (261 intervenciones) el 13/08/2016 09:02:02
Hola Alejandro, en vez de utilizar
1
rpta = tecla.nextLine();
utiliza:
1
rpta = tecla.next();

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Ingreso por teclado

Publicado por Alejandro (7 intervenciones) el 14/08/2016 18:01:18
Muchas gracias!!.. le coloque rpta = tecla.next() y Funcionoo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ingreso por teclado

Publicado por Thanatos (69 intervenciones) el 13/08/2016 13:07:42
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.util.Scanner;
 
public class CircunferenciaPunto7 {
    public static void main (String[] args) {
        Scanner tecla = new Scanner(System.in);
        double radio;
        double perimetro;
        String rpta = "s";
 
        while (rpta.equals("s")) {
            System.out.print("Radio: ");
            radio = tecla.nextDouble();
 
            perimetro = Math.PI * Math.pow (radio, 2);
            System.out.println("Per\u00EDmetro: " + perimetro);
 
            System.out.print("\n\u00BFCalcular el per\u00EDmetro de otra circunferencia?: S/N ");
            rpta = tecla.next().toLowerCase();
        }
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Ingreso por teclado

Publicado por Alejandro (7 intervenciones) el 14/08/2016 18:01:55
Muchaas graciaaas!! le coloque rpta.equals("s") y funcionoo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar