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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Tengo un problema con las divisiones en Java.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Tengo un problema con las divisiones en Java.  (Leído 3,705 veces)
Anonimo123456

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Tengo un problema con las divisiones en Java.
« en: 8 Diciembre 2012, 15:33 pm »

import java.io.*;
public class div
{
   
   public static void main (String args[]) throws IOException{
   
   
   InputStreamReader isr = new

InputStreamReader (System.in);
   BufferedReader br = new BufferedReader (isr);

   try      
   {
      System.out.println("Divisor 1 : ");
      double d1 = Double.parseDouble (br.readLine());
      System.out.println("Divisor 2 : ");
      int d2 = Integer.parseInt (br.readLine());
      double div=d1/d2;
      System.out.println("resultado: "+div);
   }
   catch (ArithmeticException e)
   {
      System.out.println("Error");
   }
   
   
   }
}


Al introducir ese código se supone que si intentamos dividir entre 0 me tiene que salir un mensaje de error pero en cambio lo que ocurre es que me pone infinity porque ocurre esto??


En línea

sapito169


Desconectado Desconectado

Mensajes: 629



Ver Perfil
Re: Tengo un problema con las divisiones en Java.
« Respuesta #1 en: 8 Diciembre 2012, 19:44 pm »

Para algunas interpretaciones un numero divido entre 0 es infinito.Esto se debe que si tenemos un numero constante y lo dividimos entre un numero cada ves mas pequeño tiende a ser infinito

http://fooplot.com/#W3sidHlwZSI6MCwiZXEiOiIzL3giLCJjb2xvciI6IiMwMDAwMDAifSx7InR5cGUiOjEwMDAsIndpbmRvdyI6WyItMjQuNzk1NTMyMjI2NTYyNDc1IiwiMjQuNzk1NTMyMjI2NTYyNDc1IiwiLTE1LjI1ODc4OTA2MjQ5OTk4NiIsIjE1LjI1ODc4OTA2MjQ5OTk4NiJdfV0-

en esta gráfica puedes ver que la curva cuando los valores de x se pegan mas a 0 y crece

mira en lo personal yo prefiero que cuando se divida un numero entre cero me lanza un exeption asi throw ExcepcionAritmeticaDivisionInvalidadEntreCero por que para mi es importante que el código sea intuitivo y fácil de entender así es mas decente así es como piensa el común de la gente

Mira la verdad que talvez salga algún genio que tenga una buena razón que justifique ese comportamiento seguramente tenga mayor conocimiento matemático que yo quisiera oír su opinión

Algún matemático por aquí que quiera decir algo

A otro punto es que si por ejemplo se llega a un punto que un programa haga esto 1/0 +3 el programa no moriría miserablemente de manera inesperada pero tendría un comportamiento raro retornando como respuesta infinito pero no lanzaría ninguna alarma y ese numero infinito lo mas probable es que se esparciría  por todas partes y todo valdría infinito sin que nadie sepa de manera fácil donde se jodió todo  :huh:





« Última modificación: 8 Diciembre 2012, 19:53 pm por sapito169 » En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Tengo un problema con las divisiones en Java.
« Respuesta #2 en: 19 Diciembre 2012, 01:37 am »

El límite de una constante cuando x tiende a 0 es infinito. (para la función A/x).

Por qué tienes d1 tipo doble y d2 tipo entero y div tipo doble? xD

Si quieres que te regrese ese error cambia todos los tipos a int.

ó bien toma el valor de d2 y si el dato ingresado es 0 muestra el mensaje de error :P


Saludos
En línea

abc
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
tengo unas dudas en java, alguien me las puede absolver
Java
jtamayo 4 2,926 Último mensaje 30 Noviembre 2007, 19:08 pm
por jtamayo
Nueva en Java y tengo una pregunta? « 1 2 »
Java
monsefoster 10 6,019 Último mensaje 11 Noviembre 2009, 23:57 pm
por monsefoster
Oracle 11g y divisiones
Bases de Datos
ccrunch 4 2,765 Último mensaje 14 Febrero 2013, 16:55 pm
por ccrunch
Tengo una duda con un codigo de java
Java
mystes93 5 2,478 Último mensaje 8 Julio 2015, 02:13 am
por robertoht
java tengo un problema con la consulta
Java
carlosalfaro 0 2,290 Último mensaje 16 Octubre 2017, 02:28 am
por carlosalfaro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines