diff options
Diffstat (limited to 'PerformanceTests/SunSpider/tests/sunspider-0.9.1/math-partial-sums.js')
-rw-r--r-- | PerformanceTests/SunSpider/tests/sunspider-0.9.1/math-partial-sums.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/PerformanceTests/SunSpider/tests/sunspider-0.9.1/math-partial-sums.js b/PerformanceTests/SunSpider/tests/sunspider-0.9.1/math-partial-sums.js new file mode 100644 index 0000000..d082d79 --- /dev/null +++ b/PerformanceTests/SunSpider/tests/sunspider-0.9.1/math-partial-sums.js @@ -0,0 +1,33 @@ +// The Computer Language Shootout +// http://shootout.alioth.debian.org/ +// contributed by Isaac Gouy + +function partial(n){ + var a1 = a2 = a3 = a4 = a5 = a6 = a7 = a8 = a9 = 0.0; + var twothirds = 2.0/3.0; + var alt = -1.0; + var k2 = k3 = sk = ck = 0.0; + + for (var k = 1; k <= n; k++){ + k2 = k*k; + k3 = k2*k; + sk = Math.sin(k); + ck = Math.cos(k); + alt = -alt; + + a1 += Math.pow(twothirds,k-1); + a2 += Math.pow(k,-0.5); + a3 += 1.0/(k*(k+1.0)); + a4 += 1.0/(k3 * sk*sk); + a5 += 1.0/(k3 * ck*ck); + a6 += 1.0/k; + a7 += 1.0/k2; + a8 += alt/k; + a9 += alt/(2*k -1); + } +} + +for (var i = 1024; i <= 16384; i *= 2) { + partial(i); +} + |