00000000: 0D 0D 0D 20 50 52 4F 47 52 41 4D 3A 0D 20 20 20 |... PROGRAM:. |
00000010: 20 20 50 52 49 4D 45 53 20 2E 0D 0D 0D 0D 20 50 | PRIMES ..... P|
00000020: 52 49 4D 45 53 3A 0D 20 20 20 20 20 53 54 41 52 |RIMES:. STAR|
00000030: 54 20 54 41 42 4C 45 20 3B 0D 20 20 20 20 20 77 |T TABLE ;. w|
00000040: 68 69 6C 65 0D 20 20 20 20 20 20 20 4D 20 3C 20 |hile. M < |
00000050: 31 30 30 30 0D 20 20 20 20 20 72 65 70 0D 20 20 |1000. rep. |
00000060: 20 20 20 20 20 54 52 59 20 49 46 20 4D 20 49 53 | TRY IF M IS|
00000070: 20 50 52 49 4D 45 20 3B 0D 20 20 20 20 20 20 20 | PRIME ;. |
00000080: 54 41 4B 45 20 4E 45 58 54 20 4D 0D 20 20 20 20 |TAKE NEXT M. |
00000090: 20 65 6E 64 72 65 70 20 2E 0D 0D 0D 0D 20 53 54 | endrep ..... ST|
000000A0: 41 52 54 20 54 41 42 4C 45 3A 0D 20 20 20 20 20 |ART TABLE:. |
000000B0: 50 55 54 20 28 20 22 74 41 42 4C 45 20 4F 46 20 |PUT ( "tABLE OF |
000000C0: 50 52 49 4D 45 20 4E 55 4D 42 45 52 53 20 3C 20 |PRIME NUMBERS < |
000000D0: 31 30 30 30 22 20 29 20 3B 0D 20 20 20 20 20 4C |1000" ) ;. L|
000000E0: 49 4E 45 20 28 20 31 20 29 20 3B 0D 20 20 20 20 |INE ( 1 ) ;. |
000000F0: 20 50 55 54 20 28 20 31 20 29 20 3B 0D 20 20 20 | PUT ( 1 ) ;. |
00000100: 20 20 50 55 54 20 28 20 32 20 29 20 3B 0D 20 20 | PUT ( 2 ) ;. |
00000110: 20 20 20 69 6E 74 20 76 61 72 20 4D 20 3A 3A 20 | int var M :: |
00000120: 33 20 2E 0D 0D 0D 0D 20 54 41 4B 45 20 4E 45 58 |3 ..... TAKE NEX|
00000130: 54 20 4D 3A 0D 20 20 20 20 20 4D 20 69 6E 63 72 |T M:. M incr|
00000140: 20 32 20 2E 0D 0D 0D 0D 20 54 52 59 20 49 46 20 | 2 ..... TRY IF |
00000150: 4D 20 49 53 20 50 52 49 4D 45 3A 0D 20 20 20 20 |M IS PRIME:. |
00000160: 20 69 6E 74 20 76 61 72 20 4B 20 3A 3A 20 33 20 | int var K :: 3 |
00000170: 3B 0D 20 20 20 20 20 77 68 69 6C 65 0D 20 20 20 |;. while. |
00000180: 20 20 20 20 4D 20 4D 41 59 20 42 45 20 44 49 56 | M MAY BE DIV|
00000190: 49 53 49 42 4C 45 0D 20 20 20 20 20 72 65 70 0D |ISIBLE. rep.|
000001A0: 20 20 20 20 20 20 20 54 52 59 20 4B 20 41 53 20 | TRY K AS |
000001B0: 44 49 56 49 53 4F 52 20 3B 0D 20 20 20 20 20 20 |DIVISOR ;. |
000001C0: 20 49 4E 43 52 45 41 53 45 20 4B 0D 20 20 20 20 | INCREASE K. |
000001D0: 20 65 6E 64 72 65 70 20 3B 0D 20 20 20 20 20 50 | endrep ;. P|
000001E0: 55 54 20 28 20 4D 20 29 20 2E 0D 0D 0D 0D 20 4D |UT ( M ) ..... M|
000001F0: 20 4D 41 59 20 42 45 20 44 49 56 49 53 49 42 4C | MAY BE DIVISIBL|
00000200: 45 3A 0D 20 20 20 20 20 28 20 4B 20 2A 20 4B 20 |E:. ( K * K |
00000210: 29 20 3C 20 4D 20 2E 0D 0D 0D 0D 20 54 52 59 20 |) < M ..... TRY |
00000220: 4B 20 41 53 20 44 49 56 49 53 4F 52 3A 0D 20 20 |K AS DIVISOR:. |
00000230: 20 20 20 69 66 0D 20 20 20 20 20 20 20 28 20 4D | if. ( M|
00000240: 20 6D 6F 64 20 4B 20 29 20 3D 20 30 0D 20 20 20 | mod K ) = 0. |
00000250: 20 20 74 68 65 6E 0D 20 20 20 20 20 20 20 6C 65 | then. le|
00000260: 61 76 65 20 54 52 59 20 49 46 20 4D 20 49 53 20 |ave TRY IF M IS |
00000270: 50 52 49 4D 45 0D 20 20 20 20 20 66 69 20 2E 0D |PRIME. fi ..|
00000280: 0D 0D 0D 20 49 4E 43 52 45 41 53 45 20 4B 3A 0D |... INCREASE K:.|
00000290: 20 20 20 20 20 4B 20 69 6E 63 72 20 32 20 2E 0D | K incr 2 ..|
... PROGRAM:. PRIMES ..... PRIMES:.
START TABLE ;. WHILE. M <
1000. REP. TRY IF M IS PRIME ;
. TAKE NEXT M. ENDREP ..... ST
ART TABLE:. PUT ( "TABLE OF PRIME NU
MBERS < 1000" ) ;. LINE ( 1 ) ;.
PUT ( 1 ) ;. PUT ( 2 ) ;. INT V
AR M :: 3 ..... TAKE NEXT M:. M INCR
2 ..... TRY IF M IS PRIME:. INT VAR
K :: 3 ;. WHILE. M MAY BE DIV
ISIBLE. REP. TRY K AS DIVISOR
;. INCREASE K. ENDREP ;. P
UT ( M ) ..... M MAY BE DIVISIBLE:.
( K * K ) < M ..... TRY K AS DIVISOR:.
IF. ( M MOD K ) = 0. THEN.
LEAVE TRY IF M IS PRIME. FI ..
... INCREASE K:. K INCR 2 ..
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL