Visual Basic - limites de VB

Life is soft - evento anual de software empresarial
 
Vista:

limites de VB

Publicado por Edwin Hernandez (1 intervención) el 07/10/2003 08:18:40
Estoy haciendo un programa en visual basic para el calculo de un valor en una base de datos de 10000 datos, mas al llegar a más de 1000 cálculos al parecer el sistema genera valores diferentes a los reales, si alguien sabe que pasa por favor avisarme, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:limites de VB

Publicado por Juan (284 intervenciones) el 07/10/2003 13:00:49
Pues es muy difícil saber que ocurre sin ver el código. Pero suponiendo que no haya ningún error en la programación, el fallo puede deberse a las limitaciones de la aritmética de como flotante. PAra ver un ejemplo de estas limitaciones prueba este ejemplo:

Private Sub Form_Load()
Dim x As Single
x = 1.1
x = x + 1.03
x = x - 1.2
MsgBox x
End Sub

Este código debería mostrar 0.93 en el mensaje, en cambio lo que vemos es 0.9300001. Es cierto que es un error muy pequeño, pero si esto sucede al hacer una suma y una resta, puede que al resolver cálculos más complejos el error crezca y llegue a ser significativo.

Si crees que tu problema puede deberse a eso tienes algunas opciones para solucionarlo. La primera es usar variables de tipo double si las estas usando de tipo single. En el ejemplo que te he puesto los cálculos saldrián correctos cambiando el tipo de la variable.

Otra opción es usar eltipo currency que almacena numeros de coma fija con 4 decimales. Pueden parecer pocos decimales pero en la mayoría de los casos no se necesita más y es probable que ese redondeo de decimales evite males mayores.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar