fn multiply(x : i32, y : i32) -> i32 {
if y > 0 {
return x + multiply(x, y - 1);
}
if y < 0 {
return -multiply(x, -y);
}
return 0;
}
fn main() {
println!("3 * 7 = {}", multiply(3, 7));
println!("3 * 0 = {}", multiply(3, 0));
println!("0 * 3 = {}", multiply(0, 3));
println!("3 * -5 = {}", multiply(3, -5));
println!("-3 * 6 = {}", multiply(-3, 6));
}
/*
run:
3 * 7 = 21
3 * 0 = 0
0 * 3 = 0
3 * -5 = -15
-3 * 6 = -18
*/