michael@0: // The Computer Language Shootout michael@0: // http://shootout.alioth.debian.org/ michael@0: // contributed by Isaac Gouy michael@0: michael@0: function partial(n){ michael@0: var a1 = a2 = a3 = a4 = a5 = a6 = a7 = a8 = a9 = 0.0; michael@0: var twothirds = 2.0/3.0; michael@0: var alt = -1.0; michael@0: var k2 = k3 = sk = ck = 0.0; michael@0: michael@0: /* BEGIN LOOP */ michael@0: for (var k = 1; k <= n; k++){ michael@0: k2 = k*k; michael@0: k3 = k2*k; michael@0: sk = Math.sin(k); michael@0: ck = Math.cos(k); michael@0: alt = -alt; michael@0: michael@0: a1 += Math.pow(twothirds,k-1); michael@0: a2 += Math.pow(k,-0.5); michael@0: a3 += 1.0/(k*(k+1.0)); michael@0: a4 += 1.0/(k3 * sk*sk); michael@0: a5 += 1.0/(k3 * ck*ck); michael@0: a6 += 1.0/k; michael@0: a7 += 1.0/k2; michael@0: a8 += alt/k; michael@0: a9 += alt/(2*k -1); michael@0: } michael@0: /* END LOOP */ michael@0: } michael@0: michael@0: /* BEGIN LOOP */ michael@0: for (var i = 1024; i <= 16384; i *= 2) { michael@0: partial(i); michael@0: } michael@0: /* END LOOP */ michael@0: