xlang/test/fib.x

29 lines
361 B
Plaintext

main() : int {
i := 0;
while i < 10 {
print fib_rec(i);
print fib_iter(i);
i = i + 1;
}
}
fib_rec(n : int) : int {
if n < 2 {
return 1;
}
return fib_rec(n - 1) + fib_rec(n - 2);
}
fib_iter(n : int) : int {
x0 := 1;
x1 := 1;
i := 0;
while i < n {
t := x0 + x1;
x0 = x1;
x1 = t;
i = i + 1;
}
return x0;
}