mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
50 lines
981 B
HTML
50 lines
981 B
HTML
|
<html><head>
|
||
|
<!-- MOZ_INSERT_CONTENT_HOOK -->
|
||
|
<script src = runner.js></script>
|
||
|
<script>
|
||
|
var onlyName = 'N-Sieve', onlyNum = 4;
|
||
|
function thisTest() {
|
||
|
|
||
|
// 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;
|
||
|
}
|
||
|
|
||
|
startTest("real-nsieve");
|
||
|
|
||
|
for ( var i = 1; i <= 4; i++ ) (function(i){
|
||
|
test( "N-Sieve", i, function(){
|
||
|
var m = (1<<i)*10000;
|
||
|
var flags = Array(m+1);
|
||
|
nsieve(m,flags);
|
||
|
});
|
||
|
})(i);
|
||
|
|
||
|
endTest();
|
||
|
}
|
||
|
</script>
|
||
|
<body onload="thisTest()"></body></html>
|