Foros del Web » Programando para Internet » Javascript »

ayuda con redondeo y decimales

Estas en el tema de ayuda con redondeo y decimales en el foro de Javascript en Foros del Web. buenas, quiero pasar un valor de euros a ptas. para ello hago lo siguiente: ptas = (euros*16638.6) /100; document.form.txtPtas.value = ptas; y por ejemnplo, tengo ...
  #1 (permalink)  
Antiguo 10/10/2006, 06:04
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
ayuda con redondeo y decimales

buenas, quiero pasar un valor de euros a ptas. para ello hago lo siguiente:

ptas = (euros*16638.6) /100;

document.form.txtPtas.value = ptas;

y por ejemnplo, tengo 1224 euros, y me da este resultado en ptas:

203.65646399999997

he hecho un Math.round, pero entonces, me da 204. y se supongo que tendrian que ser 204.000 optas.

q hago mal?

saludos
  #2 (permalink)  
Antiguo 10/10/2006, 06:07
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 10 meses
Puntos: 0
Normalmente la gente usa un

Math.round (valor*100)/100 para sacar los 2 decimales.

Saludos.

Olvida lo q he dixo, ya me he dado cuenta q lo haces en 16638.6...

Lo q no sé es cuando formateas el numero para q te dé 203.656 etc con el . xq eso es lo q hace q te lo tome como decimal y el redondeo te de 204...
__________________
La muerte es un camino que todos debemos recorrer...
  #3 (permalink)  
Antiguo 10/10/2006, 07:17
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
si te digo la verdad, es un codigo hecho que he encontrado para el calculo de hipotecas.

lo unico que intento es pasar el campo de euros a ptas, simplemente eso.

como lo formateo?

saludos
  #4 (permalink)  
Antiguo 10/10/2006, 07:36
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
he probado esto,

iptas = Math.round(iMonPayment*16638.6) / 100;

y me da como resultado

203.66

como en teoria son 204.000 ptas, si no me redondeara por lo menos que me diese tres decimales.

saludos
  #5 (permalink)  
Antiguo 10/10/2006, 09:43
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 10 meses
Puntos: 0
Estas seguro q iMonPayment está formateado como número?

A ver si tiene algún . q lo delimite. Pásale un parseFloat al recoger la variable. Muestra todo el código javascript y así seguro q entre todos podemos dar con el problema.

Saludos.
__________________
La muerte es un camino que todos debemos recorrer...
  #6 (permalink)  
Antiguo 10/10/2006, 09:52
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
la respuesta viene por el lado de toFixed()

saludos
__________________
by Capitán Buscapina
.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:35.