[javascript] Duda sobre almacenamiento en una variable

Iniciado por Zodiak98, 29 Octubre 2016, 21:49 PM

0 Miembros y 1 Visitante están viendo este tema.

Zodiak98

Buenas a todos, estoy realizando un ejercicio de la universidad donde se nos pide que usemos interpolación de LaGrange para el cálculo de una valor Y, recibiendo de entrada el valor X desde un TextBox, ya el ejercicio está resuelto el problema es que hay como un tipo de desbordamiento, porque hice los cálculos manualmente y me da el resultado esperado, pero mostré el valor de la variable con un alert y me regresa un valor totalmente inesperado.

La función que me hace el cálculo es la siguiente:
Código (cpp) [Seleccionar]

function calculate() {
//Value taken in order to calculate y's value into the function from the textbox
var x = parseInt(document.getElementById('f_Value').value);

//L0
var l_0 = ((x - 50)*(x - Math.pow(3,4))*(x - Math.pow(1,6)))/((12 - 50) * (12 - Math.pow(3,4)) * (12 - Math.pow(1,6)));
//L1
var l_1 = ((x - 12)*(x - Math.pow(3,4))*(x - Math.pow(1,6)))/((50 - 12) * (50 - Math.pow(3,4)) * (50 - Math.pow(1,6)));
//L2
var l_2 = ((x - 12)*(x - 50)*(x - Math.pow(1,6)))/((Math.pow(3,4) - 12) * (Math.pow(3,4) - 50) * (Math.pow(3,4) - Math.pow(1,6)));
//L3
var l_3 = ((x - 12)*(x - 50)*(x - Math.pow(3,4)))/((Math.pow(1,6) - 12) * (Math.pow(1,6)- 50) * (Math.pow(1,6) - Math.pow(3,4)));

//Final value after calculating it inside our function.
var v_Function = (2 * l_0) + (4 * l_1) + (100 * l_2) + (700 * l_3);

alert(l_2);
//alert("The Y value for " + x + " is: " + v_Function);
}


f_Value es el id que identifica al textbox, si meto 30000 l_2 debería obtener el valor de 1, pero en lugar de ello me retorna: 157452780.85203367, no sé si ocurre algún tipo de desbordamiento. ¿Alguien podría echarme una mano?