When I input 0.50
or other floats that can be divided by 0.25
I don´t get any error but when I input 0.10
or other float that can´t be divided by 0.25
the else
if statement that I have written does not happen. Can anyone tell me why?
#include <cs50.h>
#include <stdio.h>
#include <math.h>
int main(void) {
float change;
do {
change = get_float("Change owed: ");
} while (change < 0.009);
int count = 0;
int div = 0;
while (change > 0.00) {
if ((change / 0.25) >= 1.00) {
div = round(change / 0.25);
count += div;
change = change - (div *0.25);
} else
if ((change / 0.10) >= 1.00) {
div = round(change / 0.10);
count += div;
change = change - (div * 0.10);
} else
if ((change / 0.05) >= 1.00) {
div = round(change / 0.05);
count += div;
change = change - (div * 0.05);
} else {
div = round(change / 0.01);
count += div;
change = change - (div * 0.01);
}
}
printf("%i\n", count);
}