Sieve of Eratosthenes: Difference between revisions
Content added Content deleted
m (add consistency to examples) |
(→{{header|Commodore BASIC}}: Add implementation) |
||
Line 1,550: | Line 1,550: | ||
120 NEXT N</lang> |
120 NEXT N</lang> |
||
==={{header|Commodore BASIC}}=== |
|||
Since C= BASIC initializes arrays to all zeroes automatically, we avoid needing our own initialization loop by simply letting 0 mean prime and using 1 for composite. |
|||
<lang basic>100 REM SIEVE OF ERATOSTHENES |
|||
110 INPUT "LIMIT";LI |
|||
120 DIM N(LI) |
|||
130 SL = SQR(LI) |
|||
140 N(0)=1:N(1)=1 |
|||
150 FOR P=2 TO SL |
|||
160 : IF N(P)=1 THEN 200 |
|||
170 : FOR I=P*P TO LI STEP P |
|||
180 : N(I)=1 |
|||
190 : NEXT I |
|||
200 NEXT P |
|||
210 FOR I=2 TO LI |
|||
220 : IF N(I)=0 THEN PRINT I, |
|||
230 NEXT I |
|||
240 PRINT |
|||
</lang> |
|||
{{Out}} |
|||
<pre> |
|||
READY. |
|||
RUN |
|||
LIMIT? 100 |
|||
2 3 5 7 |
|||
11 13 17 19 |
|||
23 29 31 37 |
|||
41 43 47 53 |
|||
59 61 67 71 |
|||
73 79 83 89 |
|||
97 |
|||
READY. |
|||
</pre> |
|||
==={{header|IS-BASIC}}=== |
==={{header|IS-BASIC}}=== |
||
<lang IS-BASIC>100 PROGRAM "Sieve.bas" |
<lang IS-BASIC>100 PROGRAM "Sieve.bas" |