DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦662f107e4⟧ TextFile

    Length: 1280 (0x500)
    Types: TextFile
    Names: »PRIMES.PAS«

Derivation

└─⟦74e5ee6fb⟧ Bits:30002683 PolyPascal-86 v. 3.11 - Piccoline
└─⟦74e5ee6fb⟧ Bits:30003934 SW1402 PolyPascal v3.11 (dk) til Piccoline
    └─ ⟦this⟧ »PRIMES.PAS« 

TextFile

PROGRAM primes; æ$R-å

æ This program will calculate and display all prime numbers     å
æ between 1 and 30000. The algorithm of the program is to start å
æ out with an array containing representatives for all odd num- å
æ bers between 3 and 29999. Starting from 3 and working upwards å
æ each odd number is then tested. If a number is still a member å
æ of the list when it is tested, it is a prime number, and thus å
æ it is printed, and all odd multiples of the number are elimi- å
æ nated from the list. As can be expected, the program is quite å
æ slow on calculating the very first primes, but from then on   å
æ it gets faster and faster. Note that 1 and 2 are assumed to   å
æ be primes, and not actually calculated.                       å

CONST
  max2 = 15000;   æmaxprime/2å
  max3 = 10000;   æmaxprime/3å

VAR
  i,j,k: integer;
  test: ARRAYÆ2..max2Å OF boolean;

BEGIN
  write(1:8,2:8);
  FOR i:=2 TO max2 DO testÆiÅ:=true;
  FOR i:=2 TO max2 DO
  IF testÆiÅ THEN
  BEGIN
    j:=i+i-1; write(j:8);
    IF j<max3 THEN
    BEGIN
      k:=i+j;
      WHILE k<=max2 DO
      BEGIN
	testÆkÅ:=false; k:=k+j;
      END;
    END;
  END;
  writeln;
END.
«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»«nul»