home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Glitch Apple Disk Collection
/
2014.glitch.apple.collection.zip
/
indexed
/
FLASHCOM.DSK
/
SIEVE.int
< prev
Wrap
Text File
|
2014-09-09
|
1KB
|
40 lines
10 SIZE=8190
20 DIM FLAGS(8191):GOSUB 5000
30 CALL -936:VTAB 10:TAB 10:PRINT "SIEVE OF ERATOSTHENES":TAB 8:PRINT MSG$
35 PRINT :TAB 10:PRINT "( COUNTING PRIMES NOW )";
40 COUNT=0
50 FOR I=0 TO SIZE
60 FLAGS(I)=1
70 NEXT I
80 FOR I=0 TO SIZE
90 IF FLAGS(I)=0 THEN 170
100 PRIME=I+I+3
110 K=I+PRIME
120 IF K>SIZE THEN 160
130 FLAGS(K)=0
140 K=K+PRIME
150 GOTO 120
160 COUNT=COUNT+1
170 NEXT I
175 TAB 10:PRINT " ";:TAB 10
180 PRINT COUNT,"PRIMES<CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G>"
999 END
5000 DIM QWE(2),MSG$(200):MSG$="SLOW INTEGER BASIC VERSION"
5010 QWE=1:QWE(0)=2:IF QWE=2 THEN 5999
5020 MSG$="FLASH! COMPILED VERSION"
5999 RETURN
10000 REM THIS PROGRAM IMPLIMENTS THE
10010 REM SIEVE OF ERATOSTHENES TO
10020 REM COMPUTE ALL PRIME NUMBERS
10030 REM FROM 3 TO 16000.
10040 REM
10050 REM TAKEN FROM BYTE SEPT. 1981.
10060 REM
10070 REM RUNS IN 19.7 SEC. UNDER
10071 REM FLASH!
10072 REM
10080 REM RUNS IN 238.0 SEC. UNDER
10090 REM INTEGER BASIC INTERPRETER.
10100 REM
10110 REM SPEED UP OF 12.1 TIMES.