RosettaCodeData/Task/Fibonacci-sequence/Rust/fibonacci-sequence-2.rust

17 lines
313 B
Plaintext

fn main() {
fn fib(n: i32) -> i32 {
fn _fib(n: i32, a: i32, b: i32) -> i32 {
match (n, a, b) {
(0, _, _) => a,
_ => _fib(n-1, a+b, a)
}
}
_fib(n, 0, 1)
}
for n in 0..20 {
println!("{}", fib(n));
}
}