Primes by Trial Division - ALGOL-M

5 August 2018

BEGIN
COMMENT First n Primes;

INTEGER FUNCTION REMAINDER(X, Y);
  INTEGER X, Y;
  BEGIN
    REMAINDER := X - (Y * (X / Y));
  END;
  
PROCEDURE PRIMES(N);
  INTEGER N, I, COUNT, FOUND; 
  INTEGER ARRAY PRIMES[1:N];
  BEGIN
    COUNT := 2; FOUND := 0;
    WHILE FOUND < N DO
      BEGIN
        WRITE(COUNT);
        PRIMES[FOUND] := COUNT;
        FOUND := FOUND + 1;
NOTP:   COUNT := COUNT + 1;
        FOR I := 0 STEP 1 UNTIL FOUND DO
          BEGIN
            IF REMAINDER(COUNT, PRIMES[I]) = 0 THEN I := FOUND + 1;
          END;
        IF I > FOUND + 1 THEN GOTO NOTP;
      END;
  END;

PRIMES(100);
COMMENT PRIMES(1000);
END

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026

Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Primes Benchmark Source

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

Primes Benchmark Results

Other ALGOLs

ALGOL-M