Add test code
This commit is contained in:
38
test/fib.w12
Normal file
38
test/fib.w12
Normal file
@ -0,0 +1,38 @@
|
||||
fn rec_fib(n: int) -> int {
|
||||
if n <= 1 {
|
||||
return n;
|
||||
}
|
||||
|
||||
return rec_fib(n - 1) + rec_fib(n - 2);
|
||||
}
|
||||
|
||||
fn loop_fib(n: int) -> int {
|
||||
var a: int = 0;
|
||||
var b: int = 1;
|
||||
var i: int = 0;
|
||||
|
||||
while i < n {
|
||||
var c: int = a + b;
|
||||
a = b;
|
||||
b = c;
|
||||
i += 1;
|
||||
}
|
||||
|
||||
return a;
|
||||
}
|
||||
|
||||
fn main() -> int {
|
||||
var n: int = 20;
|
||||
var rec_result: int = rec_fib(n);
|
||||
var loop_result: int = loop_fib(n);
|
||||
printf("Fibonacci of %d via recursion is %d\n", n, rec_result);
|
||||
printf("Fibonacci of %d via loop is %d\n", n, loop_result);
|
||||
|
||||
if rec_result == loop_result {
|
||||
printf("Results match\n");
|
||||
} else {
|
||||
printf("Results do not match\n");
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user