From 600ad527491d29cb58f08f978e2a2aa9084444aa Mon Sep 17 00:00:00 2001 From: Philipe Alexandre Date: Thu, 3 Oct 2019 16:49:07 -0300 Subject: [PATCH] Adding fibonacci in rust --- Rust/fibonacci.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Rust/fibonacci.rs diff --git a/Rust/fibonacci.rs b/Rust/fibonacci.rs new file mode 100644 index 0000000..c46bde4 --- /dev/null +++ b/Rust/fibonacci.rs @@ -0,0 +1,26 @@ +use std::io; +use std::io::prelude::*; + +fn main() { + print!("Enter the amount of numbers to generate Fibonacci sequence: "); + io::stdout().flush().unwrap(); + let mut amount = String::new(); + + io::stdin().read_line(&mut amount) + .expect("Fail to read line!"); + + let amount: u32 = amount.trim().parse() + .expect("Please, enter a number!"); + + for i in 0 .. amount { + print!("{} ", fibonacci(i + 1)); + } +} + +fn fibonacci(num: u32) -> u32 { + match num { + 1 => 1, + 2 => 1, + _ => fibonacci(num - 1) + fibonacci(num - 2) + } +}