Foro de elhacker.net

Programación => Java => Mensaje iniciado por: yeah69 en 26 Mayo 2010, 01:18 am



Título: Dividir en JAVA
Publicado por: yeah69 en 26 Mayo 2010, 01:18 am
Buenas, tengo un fallo....bastante tonto pero es que ahora mismo no caigo que hago mal:

tengo 2 datos double que los divido entre ellos en otro double, y siempre me sale que vale infinity.

valgan esto: 8.0 / 4.0
 
o esto :  8.2 / 4.1

o con otros valores, siempre me pone que el resultado es infinity.
Este es el codigo:

double division = (dato/datoUs);

Alguien me puede ayudar? gracias


Título: Re: Dividir en JAVA
Publicado por: Leyer en 26 Mayo 2010, 01:39 am
WTF!, debes estar haciendo otra cosa por hay, por que no hay problema en eso


Título: Re: Dividir en JAVA
Publicado por: yeah69 en 26 Mayo 2010, 01:45 am
no lo entiendo yo tampoco la verdad, voy a formatearlos a ver.... es que además he ido metiendo System.out.println con los valores que van cogiendo y me salen divisiones como las que he puesto:
8.0/4.0   8.2/4.1   9.4/6   y siempre el resultado es el mismo, infinity....


Título: Re: Dividir en JAVA
Publicado por: MasterPM2 en 26 Mayo 2010, 01:56 am
Mejor pone todo el codigo, para detectar el error, ya que claramente no es ese.


Título: Re: Dividir en JAVA
Publicado por: yeah69 en 26 Mayo 2010, 02:03 am
Código:
public void calculaPoPonderado(){
double[]datoArea = new double[cadenaArea.length];
double[]datoPo = new double[cadenaPo.length];
double[]datoPoUnitario = new double[cadenaPo.length];
double areaTotal = 0;
double datoPoPonderado = 0;

for(int i=0;i<cadenaArea.length;i++){
datoArea[i]=Double.parseDouble(cadenaArea[i]);
datoPo[i]=Double.parseDouble(cadenaPo[i]);
areaTotal+=datoArea[i];
}




for(int i=0;i<cadenaArea.length;i++){
datoPoUnitario[i]= (datoArea[i]/areaTotal)*datoPo[i];
datoPoPonderado+=datoPoUnitario[i];
}



}

public void calculaC(){
calculaPoPonderado();
double datoPd = Double.parseDouble(cadenaPd);



double divisionPdPo = datoPd/poPonderado;

System.out.println("LA DIVISION PD / PO " +divisionPdPo);

siempre da infinity... :huh:



Título: Re: Dividir en JAVA
Publicado por: yeah69 en 26 Mayo 2010, 02:09 am
ufff creo que ya lo he visto, poPonderado NO ESTA INICIALIZADO, es variable global....y en el metodo anterior que lo calcula, antes tenia un return y hay lo igualaba...y lo hice void y se me ha pasado igualarlo.... voy a probar y espero que sea eso


Título: Re: Dividir en JAVA
Publicado por: yeah69 en 26 Mayo 2010, 02:14 am
siiiiiiiiiiii era eso, jobar ya me estaba volviendo loco, digo pero como no puedo hacer una división??? que ha ocurrido??

es que los nombres de las variables son muy parecidos y me lie tontamente...
pero bueno, ya lo he corregido por suerte, gracias, la verdad que si no pongo el código y me paro a pensar.... oye cuando finalizao el método calculaC();  no igualo la variable global al resultado... no hubiera caido en el fallo, ya me puedo ir a dormir tranquilo  ;D ;D