Substring primes: Difference between revisions
Content added Content deleted
m (Moved C++ entry after Algol 68) |
(Added Wren) |
||
Line 199: | Line 199: | ||
Found 9 numbers in which all substrings are primes |
Found 9 numbers in which all substrings are primes |
||
done... |
done... |
||
</pre> |
|||
=={{header|Wren}}== |
|||
{{libheader|Wren-math}} |
|||
<lang ecmascript>import "/math" for Int |
|||
var getDigits = Fn.new { |n| |
|||
var digits = [] |
|||
while (n > 0) { |
|||
digits.add(n%10) |
|||
n = (n/10).floor |
|||
} |
|||
return digits[-1..0] |
|||
} |
|||
var primes = Int.primeSieve(499) |
|||
var sprimes = [] |
|||
for (p in primes) { |
|||
var digits = getDigits.call(p) |
|||
var b1 = digits.all { |d| Int.isPrime(d) } |
|||
if (b1) { |
|||
if (digits.count < 3) { |
|||
sprimes.add(p) |
|||
} else { |
|||
var b2 = Int.isPrime(digits[0] * 10 + digits[1]) |
|||
var b3 = Int.isPrime(digits[1] * 10 + digits[2]) |
|||
if (b2 && b3) sprimes.add(p) |
|||
} |
|||
} |
|||
} |
|||
System.print("Found %(sprimes.count) primes < 500 where all substrings are also primes, namely:") |
|||
System.print(sprimes)</lang> |
|||
{{out}} |
|||
<pre> |
|||
Found 9 primes < 500 where all substrings are also primes, namely: |
|||
[2, 3, 5, 7, 23, 37, 53, 73, 373] |
|||
</pre> |
</pre> |