Additive primes: Difference between revisions
Content added Content deleted
imported>Chinhouse No edit summary |
|||
Line 2,414: | Line 2,414: | ||
54 |
54 |
||
</pre> |
|||
=={{header|MiniScript}}== |
|||
<syntaxhighlight lang="miniscript"> |
|||
isPrime = function(n) |
|||
if n <= 3 then return n > 1 |
|||
if n % 2 == 0 or n % 3 == 0 then return false |
|||
i = 5 |
|||
while i ^ 2 <= n |
|||
if n % i == 0 or n % (i + 2) == 0 then return false |
|||
i += 6 |
|||
end while |
|||
return true |
|||
end function |
|||
digitSum = function(n) |
|||
sum = 0 |
|||
while n > 0 |
|||
sum += n % 10 |
|||
n = floor(n / 10) |
|||
end while |
|||
return sum |
|||
end function |
|||
additive = [] |
|||
for i in range(2, 500) |
|||
if isPrime(i) and isPrime(digitSum(i)) then additive.push(i) |
|||
end for |
|||
print "There are " + additive.len + " additive primes under 500." |
|||
print additive |
|||
</syntaxhighlight> |
|||
{{out}} |
|||
<pre> |
|||
miniscript.exe additive-prime.ms |
|||
There are 54 additive primes under 500. |
|||
[2, 3, 5, 7, 11, 23, 29, 41, 43, 47, 61, 67, 83, 89, 101, 113, 131, 137, 139, 151, 157, 173, 179, 191, 193, 197, 199, 223, 227, 229, 241, 263, 269, 281, 283, 311, 313, 317, 331, 337, 353, 359, 373, 379, 397, 401, 409, 421, 443, 449, 461, 463, 467, 487] |
|||
</pre> |
</pre> |
||