Ocena użytkownikóww: ***** / 0
Nadesłany przez Tomasz Lubiński, 04 października 2012 17:47
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.
metoda_monte_carlo.js:
//Calkowanie numerczyne - metoda Monte Carlo
//(c) 2012 by Tomasz Lubinski
//www.algorytm.org
//fun - string - function (for exaple "x*x + 3")
//x - float - x value
function funValue(fun, x)
{
return eval(fun);
}
//random number from a to b
function randomPoint(a, b)
{
return a + Math.random() * (b-a);
}
//fun - string - function to integrate (for exaple "x*x + 3")
//xp - float - start of the range to integrate
//xk - float - end of the range to integrate
//n - integer - precision
function calculate(fun, xp, xk, n)
{
//initialize result
var result = 0;
for (var i=0; i<n; i++)
{
result += funValue(fun, randomPoint(xp, xk));
}
result = (result / n) * (xk - xp);
return result;
}