Emirp primes: Difference between revisions

m (changed category name.)
Line 1,572:
7717 7757 7817 7841 7867 7879 7901 7927 7949 7951 7963
10,000th emirp:
948349</pre>
 
=={{header|JavaScript}}==
Script source
<lang javascript>function isPrime(n) {
if (!(n % 2) || !(n % 3)) return 0;
 
var p = 1;
while (p * p < n) {
if (n % (p += 4) == 0 || n % (p += 2) == 0) {
return false
}
}
return true
}
 
function isEmirp(n) {
var s = n.toString();
var r = s.split("").reverse().join("");
return r != n && isPrime(n) && isPrime(r);
}
 
function main() {
var out = document.getElementById("content");
 
var c = 0;
var x = 11;
var last;
var str;
 
while (c < 10000) {
if (isEmirp(x)) {
c += 1;
 
// first twenty emirps
if (c == 1) {
str = "<p>" + x;
}
else if (c < 20) {
str += " " + x;
}
else if (c == 20) {
out.innerHTML = str + " " + x + "</p>";
}
 
// all emirps between 7,700 and 8,000
else if (7700 <= x && x <= 8001) {
if (last < 7700) {
str = "<p>" + x;
} else {
str += " " + x;
}
}
else if (x > 7700 && last < 8001) {
out.innerHTML += str + "</p>";
}
 
// the 10,000th emirp
else if (c == 10000) {
out.innerHTML += "<p>" + x + "</p>";
}
 
last = x;
}
x += 2;
}
}
</lang>
 
Solution page
<lang html><!DOCTYPE html>
<html>
<head>
<title>Emirp primes</title>
<script src="emirp.js"></script>
</head>
<body onload="main()">
<div id="content"></div>
</body>
</html></lang>
{{out}}
<pre>13 17 31 37 71 73 79 97 107 113 149 157 167 179 199 311 337 347 359 389
7717 7757 7817 7841 7867 7879 7901 7927 7949 7951 7963
948349</pre>
 
1,452

edits