Compare commits

...

2 Commits

Author SHA1 Message Date
Irmen de Jong a1ebc7090d fix sieve example 2024-04-18 22:22:29 +02:00
Irmen de Jong 054b4636e0 version 10.3 2024-04-18 21:50:48 +02:00
4 changed files with 8 additions and 17 deletions

View File

@ -119,14 +119,13 @@ This code calculates prime numbers using the Sieve of Eratosthenes algorithm::
%import textio
%zeropage basicsafe
main {
ubyte[256] sieve
bool[256] sieve
ubyte candidate_prime = 2 ; is increased in the loop
sub start() {
sys.memset(sieve, 256, false) ; clear the sieve
sys.memset(sieve, 256, 0) ; clear the sieve
txt.print("prime numbers up to 255:\n\n")
ubyte amount=0
repeat {
@ -162,9 +161,6 @@ This code calculates prime numbers using the Sieve of Eratosthenes algorithm::
}
}
when compiled an ran on a C-64 you'll get:
![c64 screen](docs/source/_static/primes_example.png)

View File

@ -120,13 +120,11 @@ This code calculates prime numbers using the Sieve of Eratosthenes algorithm::
%zeropage basicsafe
main {
ubyte[256] sieve
bool[256] sieve
ubyte candidate_prime = 2 ; is increased in the loop
sub start() {
; clear the sieve, to reset starting situation on subsequent runs
sys.memset(sieve, 256, false)
; calculate primes
sys.memset(sieve, 256, 0) ; clear the sieve
txt.print("prime numbers up to 255:\n\n")
ubyte amount=0
repeat {
@ -147,7 +145,7 @@ This code calculates prime numbers using the Sieve of Eratosthenes algorithm::
while sieve[candidate_prime] {
candidate_prime++
if candidate_prime==0
return 0 ; we wrapped; no more primes available in the sieve
return 0 ; we wrapped; no more primes
}
; found next one, mark the multiples and return it.

View File

@ -4,12 +4,11 @@
; Note: this program can be compiled for multiple target systems.
main {
bool[256] sieve
ubyte candidate_prime = 2 ; is increased in the loop
sub start() {
sys.memset(sieve, 256, 0) ; clear the sieve, to reset starting situation on subsequent runs
sys.memset(sieve, 256, 0) ; clear the sieve
; calculate primes
txt.print("prime numbers up to 255:\n\n")
@ -26,8 +25,6 @@ main {
txt.print("number of primes (expected 54): ")
txt.print_ub(amount)
txt.nl()
; test_stack.test()
}

View File

@ -5,4 +5,4 @@ org.gradle.daemon=true
kotlin.code.style=official
javaVersion=11
kotlinVersion=1.9.22
version=10.3-SNAPSHOT
version=10.3