RosettaCodeData/Task/Mutual-recursion/Rust/mutual-recursion.rust

26 lines
354 B
Text
Raw Permalink Normal View History

2015-11-18 06:14:39 +00:00
fn f(n: u32) -> u32 {
2014-04-02 16:56:35 +00:00
match n {
0 => 1,
_ => n - m(f(n - 1))
}
}
2015-11-18 06:14:39 +00:00
fn m(n: u32) -> u32 {
2014-04-02 16:56:35 +00:00
match n {
0 => 0,
_ => n - f(m(n - 1))
}
}
fn main() {
2015-11-18 06:14:39 +00:00
for i in (0..20).map(f) {
2014-04-02 16:56:35 +00:00
print!("{} ", i);
}
2015-11-18 06:14:39 +00:00
println!("");
2014-04-02 16:56:35 +00:00
2015-11-18 06:14:39 +00:00
for i in (0..20).map(m) {
2014-04-02 16:56:35 +00:00
print!("{} ", i);
}
println!("")
}