Factors of a Mersenne number: Difference between revisions

Line 25:
<!-- {{works with|ELLA ALGOL 68|Any (with appropriate job cards) - tested with release 1.8.8d.fc9.i386}}
Compiles, but I couldn't maxint not in library, works with manually entered maxint, bits width. Leaving some issue with newline -->
<lang algol>PROCMODE is primeISPRIMEINT = (INT number)BOOL:BEGIN;
PR READ "prelude/is_prime.a68" PR;
SKIP # code omitted - see Primality by Trial Division #
END;
 
MODE POWMODSTRUCT = INT;
Line 40 ⟶ 39:
OD;
 
max k := ENTIER sqrt(max int) OVER p; # limit for k to prevent overflow of max int #
FOR k FROM 1 TO max k DO
q := 2*p*k + 1;
Line 51 ⟶ 50:
IF n = 1 THEN
m factor := q;
GO TO return
FI
FI