mirror of
https://github.com/dyne/FreeJ.git
synced 2026-02-08 05:49:17 +01:00
40 lines
768 B
JavaScript
40 lines
768 B
JavaScript
// The Great Computer Language Shootout
|
|
// http://shootout.alioth.debian.org/
|
|
//
|
|
// modified by Isaac Gouy
|
|
|
|
function pad(number,width){
|
|
var s = number.toString();
|
|
var prefixWidth = width - s.length;
|
|
if (prefixWidth>0){
|
|
for (var i=1; i<=prefixWidth; i++) s = " " + s;
|
|
}
|
|
return s;
|
|
}
|
|
|
|
function nsieve(m, isPrime){
|
|
var i, k, count;
|
|
|
|
for (i=2; i<=m; i++) { isPrime[i] = true; }
|
|
count = 0;
|
|
|
|
for (i=2; i<=m; i++){
|
|
if (isPrime[i]) {
|
|
for (k=i+i; k<=m; k+=i) isPrime[k] = false;
|
|
count++;
|
|
}
|
|
}
|
|
return count;
|
|
}
|
|
|
|
var ret = 0;
|
|
function sieve() {
|
|
for (var i = 1; i <= 3; i++ ) {
|
|
var m = (1<<i)*10000;
|
|
var flags = Array(m+1);
|
|
ret += nsieve(m, flags);
|
|
}
|
|
}
|
|
|
|
sieve();
|
|
print(ret == 14302) |