2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
14
Task/Fibonacci-sequence/Rust/fibonacci-sequence-3.rust
Normal file
14
Task/Fibonacci-sequence/Rust/fibonacci-sequence-3.rust
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#![feature(conservative_impl_trait)]
|
||||
|
||||
fn main() {
|
||||
for num in fibonacci_gen(10) {
|
||||
println!("{}", num);
|
||||
}
|
||||
}
|
||||
|
||||
fn fibonacci_gen(terms: i32) -> impl Iterator<Item=f64> {
|
||||
let sqrt_5 = 5.0f64.sqrt();
|
||||
let p = (1.0 +sqrt_5) / 2.0;
|
||||
let q = 1.0/p;
|
||||
(1..terms).map(move |n| ((p.powi(n) + q.powi(n)) / sqrt_5 + 0.5).floor())
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue