Я делаю калькулятор оплаты сверхурочных в ржавчине. У меня есть следующий код ниже:
let overhours = 40;
let overhoursFLOAT = overhours as f32;
if calcpay > overhours{
println!("You worked more than 40 hours!");
let overmath = floathours - overhoursFLOAT as f32;
println!("You worked {} extra hours.",overmath);
let overpay = overmath * 1.5;
floatpay = floatpay + overpay;
}
else{println!("You did not work more than 40 hours. Therefore, your overtime pay will not be calculated.");}
Каждый раз, когда я запускаю его, количество часов, которые я ввожу (я делаю 10) меньше 40, и код оператора if все равно выполняется. В итоге это выглядит так:
How much do you get paid per hour?: 9
Hourly pay: 9
How much did you work?: 10
Hourly pay: 9
Hours worked: 10
Your calculated pay is $90
You worked more than 40 hours!
You worked -30 extra hours.
Я неправильно использую операторы? Как я могу это исправить?