Capturar una entrada desde el teclado (java)

Resuelto
La verdad pertenece a quienes la buscan y no a quienes prétenden la poseer.

11 respuestas

  1. Hola,

    ¿Qué es lo que no “funciona”? ¿error de compilación o de ejecución? ¿Hace algo que no debería? ¿No hace algo que debería? Si es así, ¿qué? “Con 0.2 por ejemplo”: ¿significa que no funciona con 0.2, pero funciona con otra cosa? ¿si es así, con qué? si no, habría que aclararlo.

    Además, veo algo raro: System.out.println("pas de h :( ");

    Esto no mostrará el valor de h....
    0
    1. y bien el try no funciona, el programa compila, todo funciona salvo esa parte, h = s.nextDouble();

      entra directo en el catch y muestra no de h :( porque el try no funcionó.

      En serio, ¿cómo hacemos para registrar una entrada por teclado de tipo 0.x?

      --
      La verdad pertenece a quienes la buscan y no a quienes pretenden poseerla.
      (no olvides poner resuelto si ya encontraste tu felicidad: piensa en los demás^^)
      0
      1. en el catch puedes mostrar la excepción, el mensaje podría ser instructivo.
        0
    2. No puedo lograrlo: no sé cómo hacerlo, no funciona IOException e
      --
      La verdad pertenece a quienes la buscan y no a quienes pretenden poseerla.
      (no olvides poner resuelto si has encontrado tu felicidad: piensa en los demás^^')
      0
      1. Hola,

        Danos la parte del código correspondiente, será más fácil de corregir...

        Atentamente,

        Dan
        0
        1. He proporcionado solo la parte relevante para que compile:

           import java.io.IOException; import java.util.Scanner; class TestLissage { public static int n; public static double y0, x0, Yn, Xn, h; public static int choix; public static void main(String[] args) { while (choix != 6 && choix != 5 && choix != 4 && choix != 3 && choix != 2 && choix != 1 && choix != 7) { System.out.println("veuillez choisir l'application à résoudre:"); System.out.println(""); System.out.println("1: y'(x) = x + y(x) solution: y(x) = exp(x)-x-1 avec y(0) = 0"); System.out.println("2: y'(x) = -2xy(x) solution: y(x) = exp(-x²) avec y(0) = 1"); System.out.println("3: y'(x) = -xy²(x) solution: y(x) = 2/(1+x²) avec y(0) = 2"); System.out.println("4: y'(x) = y(x) solution: y(x) = exp(x) avec y(0) = 1"); System.out.println("5: y'(x) = "); System.out.println("6: y'(x) = "); System.out.println("7: quitter"); try { Scanner s = new Scanner(System.in); System.out.println("entrez votre choix"); choix = s.nextInt(); } catch(Exception e){} } if (choix == 1|| choix == 2 || choix == 3 || choix == 4 || choix == 5 || choix == 6) { try { Scanner s = new Scanner(System.in); System.out.println("entrez le nombre d'itération"); n = s.nextInt(); } catch(Exception e){} try { Scanner s = new Scanner(System.in); System.out.println("entrez le pas d'itération"); h = s.nextDouble(); } catch(Exception e){} System.out.println(choix); System.out.println(n); System.out.println(h); } } 

          --
          La vérité appartient à ceux qui la cherchent et non point à ceux qui prétendent la détenir.
          (n'oubliez pas de mettre résolu si vous avez trouvé votre bonheur: pensez aux autres^^)
          0
          1. Hola,

            Para obtener la lista de StackTrace, añade esto en cada catch:

             catch(Exception e) { System.err.println("Exception :"); e.printStackTrace(); } 


            Dan
            0
            1. me aparece

              Excepción :
              java.util.InputMismatchException
              en java.util.Scanner.throwFor(Unknown Source)
              en java.util.Scanner.next(Unknown Source)
              en java.util.Scanner.nextDouble(Unknown Source)
              en TestLissage.main(TestLissage.java:44)

              por lo que corresponde a esta línea:

              h = s.nextDouble();
              --
              La verdad pertenece a aquellos que la buscan y no a aquellos que pretenden poseerla.
              (no olvides poner resuelto si has encontrado tu felicidad: piensa también en los demás^^)
              0
              1. eres demasiado fuerte :)

                funciona, muchas gracias
                --
                La verdad pertenece a quienes la buscan y no a quienes pretenden poseerla.
                (no olvides poner resuelto si has encontrado tu felicidad: piensa en los demás^^)
                0