Update README, new tests
This commit is contained in:
24
tests/recursivefib.grnd
Normal file
24
tests/recursivefib.grnd
Normal file
@@ -0,0 +1,24 @@
|
||||
fun !fib -int -int &n -function &fib
|
||||
# Base case: fib(0) = 0, fib(1) = 1
|
||||
lesser $n 2 &isBase
|
||||
if $isBase %baseCase
|
||||
|
||||
# Recursive case: fib(n) = fib(n-1) + fib(n-2)
|
||||
subtract $n 1 &nMinus1
|
||||
call !fib $nMinus1 $fib &fib1
|
||||
|
||||
subtract $n 2 &nMinus2
|
||||
call !fib $nMinus2 $fib &fib2
|
||||
|
||||
add $fib1 $fib2 &result
|
||||
return $result
|
||||
|
||||
@baseCase
|
||||
return $n
|
||||
endfun
|
||||
|
||||
# Main program
|
||||
println "Computing fib(30) recursively..."
|
||||
call !fib 30 $fib &answer
|
||||
println "Result:" $answer
|
||||
end
|
||||
Reference in New Issue
Block a user