Capturar una entrada desde el teclado (java)

Resuelto
varfendell Mensajes publicados 3259 Fecha de registro   Estado Miembro Última intervención   -  
 danimo -
La verdad pertenece a quienes la buscan y no a quienes prétenden la poseer.

11 respuestas

Pacorabanix Mensajes publicados 4122 Fecha de registro   Estado Miembro Última intervención   663
 
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
varfendell Mensajes publicados 3259 Fecha de registro   Estado Miembro Última intervención   707
 
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
Pacorabanix Mensajes publicados 4122 Fecha de registro   Estado Miembro Última intervención   663
 
en el catch puedes mostrar la excepción, el mensaje podría ser instructivo.
0
varfendell Mensajes publicados 3259 Fecha de registro   Estado Miembro Última intervención   707
 
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
danimo
 
Hola,

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

Atentamente,

Dan
0
varfendell Mensajes publicados 3259 Fecha de registro   Estado Miembro Última intervención   707
 
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
danimo
 
Perdón, ya está, ¡voy a mirar!
0
danimo
 
Hola,

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

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


Dan
0
varfendell Mensajes publicados 3259 Fecha de registro   Estado Miembro Última intervención   707
 
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
danimo
 
hacer un ensayo entrando 0,2 >>>> coma

Dan
0
varfendell Mensajes publicados 3259 Fecha de registro   Estado Miembro Última intervención   707
 
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
danimo
 
Creo que entendiste por qué: la locale...

Dan
0