Hi,
My change counting program runs perfectly except the counters don't return to 0 when I try another number. The change adds up from the first try. Is there any way to fix this?
#include <stdio.h>
int main()
{
int toonie=0, dollar=0, quarter=0, dime=0, nickel=0, cent=0;
float amount, change, cchange;
char ch='Y', N, Y;
while(ch=='Y'){
printf("\n Your total is $", amount);
scanf(" %f", &amount);
change=(5.00-amount);
printf("\n Your change is $%3.2f\n", change);
while(change>=0 && change<5.00){
cchange=(change*100);
while (cchange>=200){
cchange-=200;
toonie++;
}
while (cchange>=100){
cchange-=100;
dollar++;
}
while (cchange>=25){
cchange-=25;
quarter++;
}
while (cchange>=10){
cchange-=10;
dime++;
}
while (cchange>=5){
cchange-=5;
nickel++;
}
while(cchange>=1){
cchange-=1;
cent++;
}
// print results
printf(" You have %d coins of 2 dollars \n", toonie);
printf(" You have %d coins of 1 dollar \n", dollar);
printf(" You have %d coins of 25 cents \n", quarter);
printf(" You have %d coins of 10 cents \n", dime);
printf(" You have %d coins of 5 cents \n", nickel);
printf(" You have %d coins of 1 cent \n", cent);
break;
} // end while
printf("\n Do you want to try again? (Y/N)\n\n");
ch=toupper(getche());
} // end while
getch();
}
thanks for your help!