Wieferich primes: Difference between revisions

Content added Content deleted
No edit summary
Line 596: Line 596:
3,511
3,511
</pre>
</pre>

=={{header|Haskell}}==
<lang haskell>isPrime :: Integer -> Bool
isPrime n
|n == 2 = True
|n == 1 = False
|otherwise = null $ filter (\i -> mod n i == 0 ) [2 .. root]
where
root :: Integer
root = toInteger $ floor $ sqrt $ fromIntegral n

isWieferichPrime :: Integer -> Bool
isWieferichPrime n = isPrime n && mod ( 2 ^ ( n - 1 ) - 1 ) ( n ^ 2 ) == 0

solution :: [Integer]
solution = filter isWieferichPrime [2 .. 5000]

main :: IO ( )
main = do
putStrLn "Wieferich primes less than 5000:"
print solution</lang>
{{out}}
<pre>Wieferich primes less than 5000:
[1093,3511]</pre>



=={{header|Java}}==
=={{header|Java}}==