Skip to content

Instantly share code, notes, and snippets.

@fujidig
Created April 4, 2014 12:57
Show Gist options
  • Save fujidig/9974177 to your computer and use it in GitHub Desktop.
Save fujidig/9974177 to your computer and use it in GitHub Desktop.
var M = 100000;
var st = Date.now();
console.log(numPrimes1(M));
console.log((Date.now() - st)+" msec");
var st = Date.now();
console.log(numPrimes2(M));
console.log((Date.now() - st)+" msec");
function numPrimes1(max) {
var num = 0;
for (var i = 2; i <= max; i ++) {
if (isPrime(i)) num += 1;
}
return num;
function isPrime(x) {
var m = Math.floor(x / 2);
if (x == 1) return false;
for (var i = 2; i <= m; i ++) {
if (Math.floor(x / i) * i == x) return false;
}
return true;
}
}
function numPrimes2(max) {
var floor = Math.floor;
var num = 0;
for (var i = 2; i <= max; i ++) {
if (isPrime(i)) num += 1;
}
return num;
function isPrime(x) {
var m = floor(x / 2);
if (x == 1) return false;
for (var i = 2; i <= m; i ++) {
if (floor(x / i) * i == x) return false;
}
return true;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment