Bueno lo mio es medio simple pero no me acuerdo y no tengo acá ningun manual de VB, el tema es asi, necesito hacer un calculo, pero tengo muchos valores con decimales y yo solo necesito cargar 4 decimales ya que ese el valor legal con los decimales que se deben calcular.-
El programa es para calcular intereses sobre un capital
(http://img59.imageshack.us/img59/8248/calculo1ng.jpg) (http://imageshack.us)
Yo necesito saber como hacer para tomar en los resultados parciales y fianles 4 decimales
Este es el codigo del programa y una captura del programita
Private Sub calcular_Click()
c = capital.Text
ia = inta.Text
im = ia / 12
cuot = cuotas.Text
f1 = im / 100
f2 = (1 + f1)
ftt = 0
ft = 1
For cont = 1 To cout Step 1
ftt = ft * f2
ft = ftt
Next cont
ds = ft * f1
di = ft - 1
rc = c * ( ds / di )
cuotasr.Text = rs
End Sub
capital.text = TEXT BOX CAPITAL
inta.Text = TEXT BOX INTERES ANUAL
cuotas.Text 0 TEXT BOX CUOTAS
cuotasr.Text = TEXT BOX VALORES DE LAS CUOTAS
Que tengo que modificarle para lo que necesito que tome solo 4 decimales desde ya muchas gracias por la ayuda
Y si hablas en catellano?..chau! :oops:
Cita de: emmaskapunkY si hablas en catellano?..chau! :oops:
No entendi, pero si es por la formula de la imagen es la formula para el calculo de intereses creo que es la del metodo aleman, la puse asi se saben que estoy haciendo pero por las dudas aclaro un poco más
ia es el valor de texto de inta lo divido pro 12 para conseguir el interes por mes, el interes por mes es
imluego f1 es el resultado del factor interes mensual
im sobre 100 que es un termino que aparece 3 veces en la formula
f2 es el el factor f1 + 1 que aparece dos veces en al formula
en al for lo que hago es multiplicar en
m cantidad de veces, ya que
m con los menes o cuotas, para hacer este aperación lo que hago es asignar a la variable ftt la multiplicacion de la variable ft por f2 y luego asignarle a ft el valor de ftt asi para que en la proxima pasad se cumpla lo requerido que es multiplicar una ves más el factor hasta llegar a
m siempre incrementando de a 1; alli lo que me dy cuenta ahora que faltaria es dejar en 0 a ftt (ftt=0) para evitar algun error de carga
luego al tener ya los resultados y al ser
ft el termino
f2 a la
m puedo proceder a determinar el numerador y el denominador de la operación para ello
ds es el numerador y
di el denominador
luego calculo el rc (resultado de cuota) haciendo la unica operación que falta
Aclaro todo esto para que se entienda la logica, lo que yo necesito es que cuando tenga un resultado más de 4 decimales trunque en el 4 decimal, nisiquiera pido que se haga el redondeo solo que trinque asi no arrastro toneladas de decimales a los calculos siguientes
Juanjok lo ke keres es ke te limite el resultado en 4 decimales??
encontre esto no se si sirve:
Citar
Dim MiVar, pi
pi = 3,14159
Round(pi, 2)
http://www.eside.deusto.es/grupos/gedi/recursos/referencias/vbscript/HTML/vsfctround.htm
Por lo que leí round funca desde la version 6.
El tema es que esta funcion te lo va a "redondear" y no a trunquear...
Sino la otra es usar manejo de cadenas.. y probar tomar los primeros 4 valores despues del punto.
La verdad que no me acuerdo mucho de vb pq' no lo uso.
PD: Odio VB.. :evil: acaso no hay que definir el tipo de variable :?
Cita de: FiGuJuanjok lo ke keres es ke te limite el resultado en 4 decimales??
Claro que cada resultado tenga limitado a 4 decimales
por ejemplo: 19% anual de interes en 12 meses es a 1.5833333333333 de interes mensual
yo necesito que solo tome 1.5833 cuando a eso lo divido en 100 me quede 0.0158 y asi con todo lso resultados
SNOOP voy a probar ese dato que me pasaste y aviso que tal me va
bueno.. no segui el hilo de tus variables pero es asi.. mira.. el ke dice 4Dec.. vendria a ser la variable limitada a 4 decimales y la TodosDec la variable con los 3456 decimales ke obtenes vo..
4Dec = Format(TodosDec, "0.0000")
Ejemplo..
tenemos:
TodosDec = 1,5833333333333
Funcion
4Dec = Format(TodosDec, "0.0000"
Obtenemos
4Dec = 1,5833
dentro de format le asignas la cantidad de decimales ke keres en la parte donde esta: "0.0000"
espero ke te sirva.. cualkier cosa avisa..
exacto con el format limitas los decimales!!