elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Errores
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Errores  (Leído 2,898 veces)
Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
Errores
« en: 15 Febrero 2011, 06:14 am »

Buenas:

Estoy haciendo pruebas del Try y Catch. Se trata de que detecte los errores InputMismatchException por si pongo alguna letra en vez de un número en una división y ArithmeticException por si intento dividir por cero pero no pasa nada.

El código que he hecho hasta ahora es este.

Código
  1. try{
  2.        double resultado;
  3.        Scanner teclado=new Scanner(System.in);
  4.        System.out.println("Introduce un numerador: ");
  5.        double numerador = teclado.nextDouble();
  6.        System.out.println("Introduce un denominador: ");
  7.        double denominador = teclado.nextDouble();
  8.  
  9.        resultado = numerador / denominador;
  10.        System.out.println("El numerador " + numerador + " entre el denominador "
  11.                + denominador + " es: " + resultado);
  12.        }
  13.  
  14.        catch (InputMismatchException e){
  15.            System.out.println("Haz introducido algún carácter. \n");
  16.        }
  17.  
  18.        catch (ArithmeticException d){
  19.            System.out.println("No puedes dividir por cero.\n");
  20.            }
  21.        }

Por si acaso, he puesto estos import.
import java.io.*;
import java.util.*;
import java.lang.Exception;
import java.lang.Error;


;)


En línea

ltbl

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Errores
« Respuesta #1 en: 25 Febrero 2011, 21:13 pm »

Hola. Prueba a poner numerador y denominador como integers. La división por 0 debería dar infinito, pero no se puede representar infinito en integer, por eso salta la ArithmeticException.  En cambio en coma flotante si se puede representar y por eso te funciona.



En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Errores
Programación Visual Basic
Bourne Ultimatum 1 1,492 Último mensaje 27 Octubre 2005, 04:38 am
por EduardoAC77
errores ocx
Programación Visual Basic
josemer 1 1,517 Último mensaje 16 Agosto 2006, 19:50 pm
por n3ts4mura1
[Aporte] Manejar Errores en VB (logger de errores)
Programación Visual Basic
‭‭‭‭jackl007 1 2,444 Último mensaje 1 Marzo 2008, 19:11 pm
por Sancho.Mazorka
HD con errores
Hardware
Mr.Shak 4 6,811 Último mensaje 19 Mayo 2010, 16:42 pm
por Aprendiz-Oscuro
Errores en advertencias con cake y errores en mostrar nuevas respuestas.
Sugerencias y dudas sobre el Foro
Littlehorse 4 4,297 Último mensaje 1 Octubre 2010, 16:31 pm
por [D4N93R]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines