Lucas-Lehmer test: Difference between revisions

Content added Content deleted
m (→‎{{header|Python}}: straight from A68 ☺ ... python does rather well with arbitary precision, fast too.)
m (→‎{{header|Ada}}: Changed from long_long_integer to 64 bit unsigned integer)
Line 12:
procedure Lucas_Lehmer_Test is
type Ull is mod 2**64;
function Mersenne(Item : Integer) return Boolean is
S : Long_Long_IntegerUll := 4;
MP : Long_Long_IntegerUll := 2**Item - 1;
begin
if Item = 2 then
return True;
else
for I in 3..Item loop
S := (S * S - 2) mod MP;
end loop;
Line 38 ⟶ 39:
end loop;
end Lucas_Lehmer_Test;
 
Output: (Output was truncated by an arithmetic overflow exception.)
Output:
Mersenne primes:
M2 M3 M5 M7 M13 M17 M19 M31