Primes by Trial Division - Data General Extended ALGOL

12 July 2025
BEGIN
COMMENT First n Primes;
LITERAL OUT ("$TTO");
INTEGER PROCEDURE REMAINDER(X, Y);
INTEGER X, Y;
BEGIN
REMAINDER := X - (Y * (X / Y));
END;
PROCEDURE DOPRIMES(N);
INTEGER N;
BEGIN
INTEGER I, COUNT, FOUND;
INTEGER ARRAY PRIMES[0:N-1];
OPEN (1, OUT);
COUNT := 2;
FOR FOUND := 0, FOUND+1 WHILE FOUND < N DO
BEGIN
OUTPUT (1, "#<15>", COUNT);
PRIMES[FOUND] := COUNT;
NOTP: COUNT := COUNT + 1;
FOR I := 0, I+1 WHILE I < FOUND DO
BEGIN
IF REMAINDER(COUNT, PRIMES[I]) = 0 THEN GO TO NOTP;
END;
END;
END;
COMMENT DOPRIMES(100);
DOPRIMES(1000);
END