macro_rules! prob1 { | |
(0) => { | |
0 | |
}; | |
($n:expr) => { | |
if ($n % 3 == 0) || ($n % 5 == 0) { | |
$n + prob1!($n - 1); //~ ERROR recursion limit reached while expanding `prob1!` | |
} else { | |
prob1!($n - 1); | |
} | |
}; | |
} | |
fn main() { | |
println!("Problem 1: {}", prob1!(1000)); | |
} |