Files
Rafał Grodziński 3726e88865 Fixed fib sample
2025-08-01 12:39:09 +09:00

34 lines
649 B
Plaintext

@extern putchar fun: character u32 -> u32
fib fun: number u32 -> u32
ret if number < 2:
number
else
fib(number - 1) + fib(number - 2)
;
;
printNum fun: number u32
biggest u32 <- 10
rep biggest <= number: biggest <- biggest * 10
biggest <- biggest / 10
rep biggest > 0:
digit u32 <- number / biggest
putchar(digit + '0')
number <- number % biggest
biggest <- biggest / 10
;
;
// Print first 20 fibonaci numbers
main fun -> u32
rep i u32 <- 0, i < 20:
res u32 <- fib(i)
printNum(res)
putchar('\n')
i <- i + 1
;
ret 0
;