home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
modula2
/
compiler
/
taylmod2
/
sieve.mod
< prev
next >
Wrap
Text File
|
1988-06-30
|
691b
|
28 lines
MODULE Prime; (* from BYTE Magazine, January 1983 *)
FROM InOut IMPORT WriteLn, WriteInt, WriteString;
CONST Size = 8190;
VAR Flags: ARRAY [0..Size] OF BOOLEAN;
i,prime,k,count,iter: CARDINAL;
BEGIN
WriteLn; WriteString ("25 iterations");
FOR iter:=1 TO 25 DO
count:=0;
FOR i:=0 TO Size DO Flags[i]:=TRUE
END;
FOR i:=0 TO Size DO
IF Flags[i] THEN
prime:=i*2+3;
k:=i+prime;
WHILE k<=Size DO
Flags[k]:=FALSE;
INC (k,prime);
END;
INC (count);
END;
END;
END;
WriteLn; WriteInt (count,6); WriteString (' primes');
END Prime.