Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: roosevelt en 7 Junio 2017, 20:12 pm



Título: Ayuda! multiplicar resultad decimal con numero entero y decimal
Publicado por: roosevelt en 7 Junio 2017, 20:12 pm
AYUDENME!!
Cuando quiero multiplicar el valor que resulta en Lr (numero decimal) para obtener Lt, el programa lo interpreta como si fuera una numero entero. Ejem. 3.2x2=64 cuando deberi ade ser 6.4 Ayuda :')  :( :( :( :( :(
Private Sub ca_Change()
a = ca * 0.0000001 + 0.0000005

End Sub

Private Sub cb_Change()
b = cb * 0.000000001

End Sub

Private Sub CommandButton1_Click()

Lr = 35 * val(D) * (val(Ri) * (val(VA) + val(CO))) ^ (1 / 2)
Lt = Lr * 2
End Sub

Private Sub V1_Change()
V = V1 + 0.2
End Sub


Título: Re: Ayuda! multiplicar resultad decimal con numero entero y decimal
Publicado por: MCKSys Argentina en 7 Junio 2017, 20:16 pm
Hola!

Prueba reemplazando la función Val por CSng.

Saludos!

EDIT: Ojo con la configuración regional pues VB6 usa la misma para convertir números. Si tienes el punto como separador decimal, estará bien. Pero si tienes la coma, tendrás problemas.


Título: Re: Ayuda! multiplicar resultad decimal con numero entero y decimal
Publicado por: Serapis en 7 Junio 2017, 22:14 pm
No se ve ninguna declaración de variables...
Así que es normal.

Si tienes que usar decimales, declara las variables de tipo Single (ó double, solo si requieres mucha precisión, porque es mucho más lento operar con este tipo).