Visual Basic - Error al sumar números Double

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Error al sumar números Double

Publicado por Aslén (3 intervenciones) el 25/05/2023 04:08:11
Saludos para todos...
Sucede que estoy montando una aplicación para escritorio con Visual Studio 2012 para registrar y controlar algunas ventas pero tengo un problema al sumar decimales.

Al sumar 3.0116 + 2.1556 en vb tengo como resultado 5.1556
pero al sumarlo Excel el resultado es: 5.1672 y ocurre lo mismo si lo sumo en una calculadora.

¿Cómo puedo corregir este problema?

Gracias...

Sin-titulo
Sin-titulo-2
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
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Error al sumar números Double

Publicado por Antoni Masana (558 intervenciones) el 25/05/2023 13:59:26
La diferencia entre la suma de las dos cantidades en uno y en el otro caso es de 0,0116.
La cuestión es ¿De donde sale esta cantidad? Pues de donde haces la suma, hay algo que no ves y esta ahí.
Debo suponer, porque no tengo forma de saberlo, que el importe marcado con la flecha es la suma de la columna CUC, y en esta columna hay algo que no estas viendo.

Como no se como esta el código hago una simulación para que la realices en tu programa y veas donde esta el fallo:

Supongo el código algo así:
1
2
3
4
Total = 0
For Ind=0 to ... ' --- Recorre la tabla, o el ListBox o lo que sea
    Total = Total + Tabla(Ind) ' --- Donde tabla(Ind) es cada uno de los elementos de la columna CUC
Next

Has esto:
1
2
3
4
5
6
Total = 0
For Ind=0 to ... ' --- Recorre la tabla, o el ListBox o lo que sea
    MsgBox "Indice: " & Ind & vbcrlf & _
           "Cantidad: " & Tabla(Ind)
    Total = Total + Tabla(Ind) ' --- Donde tabla(Ind) es cada uno de los elementos de la columna CUC
Next

A parte de esto con la informacíón que muestras no se puede saber que pasa.

Saludos.
\\//_
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

Error al sumar números Double

Publicado por An0n (1 intervención) el 25/05/2023 18:57:05
Con tus fechas de entrega estarían entregando suministros para los parrarayos?

también puedes checar si la columna CUC tiene algún formato especifico.
y lo que dice el compañero Antoni es lo mejor, checar los datos
o lo que se esta mostrando el tiempo de ejecución, en mi caso utilizo mucho

1
2
3
Msgbox "_" + VariableTextual + "_"
Msgbox "_" + cStr(VariableNumerica) + "_"

para ver lo que tiene o no, lento pero muy ilustrativo, suerte.
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
sin imagen de perfil

Error al sumar números Double

Publicado por Aslén (3 intervenciones) el 25/05/2023 20:00:51
Saludos y muchas gracias por responder.
Resolví el problema creando una variable global de tipo long en un módulo y ests variable va sumando el total de CUC y mostrando el resultado en el textbox. Anterior mente no usaba la variable y lo que hacía era tomar el valor del textbox, lo sumaba al nuevo incremento y le retornaba el resultado nuevamente al textbox. Al parecer había un error en ese proceso pero con la variable global todo sale bien, gracias por responder. Un fuerte abrazo desde Cuba.
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
sin imagen de perfil

Error al sumar números Double

Publicado por Aslén (3 intervenciones) el 25/05/2023 22:55:00
Disculpen el error en el mensaje anterior, el tipo de variable que usé fue Double y no Long.
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