use std::env;
fn main() {
let args: Vec<String> = env::args().collect();
if args.len() != 4 {
eprintln!("Usage: {} <operator> <operand1> <operand2>", args[0]);
return;
}
let operator = &args[1];
let operand1: f64;
let operand2: f64;
match (args[2].parse(), args[3].parse()) {
(Ok(num1), Ok(num2)) => {
operand1 = num1;
operand2 = num2;
},
(Err(_), _) => {
eprintln!("Both operands must be numbers.");
return;
}
}
let result = match operator {
"+" => operand1 + operand2,
"-" => operand1 - operand2,
"*" => operand1 * operand2,
"/" => {
if operand2 == 0.0 {
eprintln!("Division by zero is not allowed.");
return;
}
operand1 / operand2
}
_ => {
eprintln!("Unsupported operator: {}", operator);
return;
}
};
println!("Result: {}", result);
}