Jensen's Device: Difference between revisions
Content added Content deleted
(Added Algol W) |
(Add Rust implementation) |
||
Line 1,493: | Line 1,493: | ||
p sum(1,100){|i| Rational(1,i)} # => 14466636279520351160221518043104131447711 / 2788815009188499086581352357412492142272 |
p sum(1,100){|i| Rational(1,i)} # => 14466636279520351160221518043104131447711 / 2788815009188499086581352357412492142272 |
||
</lang> |
</lang> |
||
=={{header|Rust}}== |
|||
<lang rust> |
|||
use std::f32; |
|||
fn harmonic_sum<F>(lo: usize, hi: usize, term: F) -> f32 |
|||
where |
|||
F: Fn(f32) -> f32, |
|||
{ |
|||
(lo..hi + 1).fold(0.0, |acc, item| acc + term(item as f32)) |
|||
} |
|||
fn main() { |
|||
println!("{}", harmonic_sum(1, 100, |i| 1.0 / i)); |
|||
} |
|||
</lang> |
|||
{{out}} |
|||
<pre> |
|||
5.187378 |
|||
</pre> |
|||
=={{header|Scala}}== |
=={{header|Scala}}== |