existen flotantes en vb.net?

29/05/2005 - 20:53 por Sonia | Informe spam
estoy haciendo un formulario sobre pedidos y si el precio es 19,8 me sale 20
si es 4,3 me sale 4 etc
he pueso 'float' pero me da error
como se puede subsanar esto en vb.net?
gracias!!
 

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
30/05/2005 - 01:26 | Informe spam
Existen dos tipos de punto flotante, Single y Double. Sin embargo para
valores monetarios es mejor usar Decimal que es un entero escalar (el numero
decimal se guarda como un entero). El asunto es que con numeros de punto
flotante no se pueden representar todos los numeros decimales con precision
y puede ser que haciendo calculos y comparaciones no resulte el valor
esperado. Por ejemplo con este codigo:

Dim v1 As Single = 1.33
Dim v2 As Single = 1
Dim v3 As Single = v1 - v2

If v3 = 0.33 Then
Console.WriteLine("Son iguales")
Else
Console.WriteLine("No son iguales")
End If

Uno pensaria que se va a escribir "Son iguales" pero en lugar se escribe "No
son iguales" y esto porque v3 es en realidad 0.330000043!

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo

Preguntas similares