Foros del Web » Programando para Internet » ASP Clásico »

Problema con numero con muchos decimales

Estas en el tema de Problema con numero con muchos decimales en el foro de ASP Clásico en Foros del Web. No consigo realizar correctamnete una operación. Al coger de la Bd RsDetalles("PRICE") este tiene el valor igual a 33.333333333333336. Si realizo esta operación: importe=RsDetalles("PRICE") * ...
  #1 (permalink)  
Antiguo 21/05/2009, 05:55
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 11 meses
Puntos: 0
Problema con numero con muchos decimales

No consigo realizar correctamnete una operación. Al coger de la Bd RsDetalles("PRICE") este tiene el valor igual a 33.333333333333336.

Si realizo esta operación:

importe=RsDetalles("PRICE") * 0.6 = 2E+16

Sin embargo si pongo los valores directamente, obtengo el resultado correcto:
importe=33.333333333333336 * 0.6 = 20

He probado con Cdbl Convertir RsDetalles("PRICE") a una expresión a tipo Double , pero sigo obteniendo 2E+16

¿como debo de tratar RsDetalles("PRICE") para que al realizar la operación obtenga el resultado correcto?
  #2 (permalink)  
Antiguo 21/05/2009, 07:58
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: Problema con numero con muchos decimales

Haz probado con algo como importe=FormatNumber(RsDetalles("PRICE") * 0.6,0)

  #3 (permalink)  
Antiguo 22/05/2009, 01:53
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 11 meses
Puntos: 0
Respuesta: Problema con numero con muchos decimales

Gracias por tu respuesta Myakire, he probado lo que me comentas, pero obtengo 20.000.000.000.000.000 en lugar de 20
  #4 (permalink)  
Antiguo 22/05/2009, 07:28
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: Problema con numero con muchos decimales

mmmmmm, no es que no te crea , pero no hay motivo o razón para que obtuvieras ese resultado al multiplicar los datos que dices tienes ¿seguro que esos son tus factores?

por cierto ¿El punto es separador de decimales o miles en tu país?

Edito:

Nomás por la pura curiosidad, hice esto:
Código asp:
Ver original
  1. a = 33.333333333333336
  2. b = 0.6
  3.  
  4. response.write a*b
  5. response.write "<br>"
  6.  
  7. response.write FormatNumber(a*b,0)
  8. response.write "<br>"
  9.  
  10. response.write FormatNumber(33.333333333333336 * 0.6,0)
  11. response.write "<br>"

y el resultado es 20 en los tres casos
  #5 (permalink)  
Antiguo 25/05/2009, 03:58
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 11 meses
Puntos: 0
Respuesta: Problema con numero con muchos decimales

Gracias Myakire, estoy en España, el punto es separador de miles aqui.

Lo he solucionado reemplazando el punto por la coma en RsDetalles("PRICE"),".",",")

importe= Replace(RsDetalles("PRICE"),".",",") * 0.6

Y obtengo 20
  #6 (permalink)  
Antiguo 25/05/2009, 06:57
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: Problema con numero con muchos decimales

quizá te hubiera más convenido cambiar el LCID que hacer el replace
  #7 (permalink)  
Antiguo 25/05/2009, 11:26
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 11 meses
Puntos: 0
Respuesta: Problema con numero con muchos decimales

No cai en el LCID , gracias por tu ayuda Myakire
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 05:44.