Data update
This commit is contained in:
parent
81fd053722
commit
52a6ef48dd
10248 changed files with 63654 additions and 6775 deletions
|
|
@ -0,0 +1,6 @@
|
|||
(defun fib (n &optional (f1 0) (f2 1))
|
||||
(if (< n 0)
|
||||
(format t "Parameter must be >= 0")
|
||||
(if (zerop n)
|
||||
f1
|
||||
(fib (1- n) f2 (+ f1 f2)))))
|
||||
|
|
@ -1,17 +1,14 @@
|
|||
fun fibonacci = int by int n
|
||||
if n < 0 do
|
||||
logLine("Invalid argument: " + n) # logs on standard error
|
||||
return -1 ^| it should be better to raise an error,
|
||||
| but the task is about recursive functions
|
||||
|^
|
||||
end
|
||||
fun actualFibonacci = int by int n
|
||||
return when(n < 2, n, actualFibonacci(n - 1) + actualFibonacci(n - 2))
|
||||
fun fibonacci ← int by int n
|
||||
if n < 0
|
||||
logLine("Invalid argument: " + n)
|
||||
return -1 # we could raise an error instead
|
||||
end
|
||||
fun actualFibonacci ← <int n|when(n < 2,
|
||||
n, actualFibonacci(n - 1) + actualFibonacci(n - 2))
|
||||
return actualFibonacci(n)
|
||||
end
|
||||
writeLine("F(0) = " + fibonacci(0))
|
||||
writeLine("F(20) = " + fibonacci(20))
|
||||
writeLine("F(-10) = " + fibonacci(-10))
|
||||
writeLine("F(30) = " + fibonacci(30))
|
||||
writeLine("F(10) = " + fibonacci(10))
|
||||
writeLine("F(0) = ", fibonacci(0))
|
||||
writeLine("F(20) = ", fibonacci(20))
|
||||
writeLine("F(-10) = ", fibonacci(-10))
|
||||
writeLine("F(30) = ", fibonacci(30))
|
||||
writeLine("F(10) = ", fibonacci(10))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue