Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

Tengo un problema en "Evaluando una pelicula"

Este es mi codigo en el cual meda error cuando ingreso a traves del teclado variables como se piden, y cuando pongo numeros enteros no, cual puede ser el error?

import java.util.Scanner;

public class Loop {

    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        double nota = 0;
        double  mediaDeEvaluaciones = 0;


        for (int i = 0; i < 3; i++) {
            System.out.println("Agregale una nota a la pelicula matrix: ");
            nota = teclado.nextDouble();
            mediaDeEvaluaciones = mediaDeEvaluaciones + nota;
        }
        System.out.println("La media general de la pelicula Matrix es: "+ mediaDeEvaluaciones / 3);
    }
}

Exception in thread "main" java.util.InputMismatchException at java.base/java.util.Scanner.throwFor(Scanner.java:939) at java.base/java.util.Scanner.next(Scanner.java:1594) at java.base/java.util.Scanner.nextDouble(Scanner.java:2564) at Loop.main(Loop.java:13)

estos son los errores
3 respuestas
solución!

Hola Noe, espero que estés bien

Parece que estás enfrentando un problema con el método nextDouble() del objeto Scanner. Este método espera recibir un número en formato de punto flotante, lo cual puede variar dependiendo de la configuración regional de tu sistema. Por ejemplo, en algunas configuraciones, el separador decimal es el punto (.), mientras que en otras es la coma (,).

Si estás ingresando números con coma como separador decimal, esto podría estar causando el InputMismatchException. Aquí tienes un par de soluciones que podrías intentar:

  1. Usar el punto como separador decimal: Asegúrate de ingresar los números con un punto en lugar de una coma. Por ejemplo, en lugar de 9,5, ingresa 9.5.

  2. Configurar el Scanner para aceptar comas: Puedes cambiar la configuración del Scanner para que acepte comas como separadores decimales. Para hacer esto, puedes usar el método useLocale() para establecer la configuración regional adecuada.

Prueba estas soluciones y ve si alguna de ellas resuelve el problema. Espero que esto te ayude a seguir adelante con tu aprendizaje de Java. ¡Espero haber ayudado y buenos estudios!

Hola buenos dias, si tenias razon no me di cuenta que era por la configuracion regional de mi sistema, si ponia "9,0" en vez de "9.0" no me daba error y no lo probe.

Muchas gracias por solucionarme mi problema!

me paso lo mismo ! ya vi pero tengo la duda de como se configura scanner como lo siguieren aqui Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad