Own-Programming-Language-Tu.../examples/functions/factorial.own
2016-02-20 10:12:26 +02:00

35 lines
561 B
Plaintext

// Factorial
def factorial(n) {
if n == 1 return 1
return n * factorial(n-1)
}
print factorial(6)
print "\n"
// 0 1 1 2 3 5 8 13 21 34
def fibonacci(count) {
def fib(n) {
if n < 2 return n
return fib(n-2) + fib(n-1)
}
return fib(count)
}
for i = 0, i < 10, i++
print " " + fibonacci(i)
print "\n"
// Tail recursive factorial
def factorial_tailrec(n) {
def fact(acc, n) {
if n == 0 return acc
return fact(acc * n, n - 1)
}
return fact(1, n-1)
}
print factorial_tailrec(6)
print "\n"