fn fib(n: u32) -> u32 { var index: u32 = 0 var a: u32 = 0 var b: u32 = 1 while index < n { let next: u32 = a + b a = b b = next index = index + 1 } return a } fn fibSum(max: u32) -> u32 { var index: u32 = 0 var sum: u32 = 0 while index <= max { sum = sum + fib(index) index = index + 1 } return sum } pub fn main(world: World) -> Void raises { if fib(0) == 0 && fib(1) == 1 && (fib(2) == 1 && fib(10) == 55) && fibSum(10) == 143 { check world.out.write("fibonacci ok\n") } }