У меня проблемы с отображением правильного счета в моем для l oop. Это работает для моих предыдущих кодов, но когда я использую этот, счет слишком велик. То, что я пытаюсь сделать, это сделать так, чтобы мой l oop посчитал введенное число и вычитал число каждый раз, когда он пробегает. Например:
Когда я набираю 50 с использованием этого кода:
double change; //input variable for change
cin >> change;
//for loop for 50 dollar bills
for (int fif = change; fif >= 50; fif -=50)
{
b++; //this is the count variable
change = fif - 50;
}
if (b == 1)
cout << b << " $50 bill\n";
else
cout <<"";
cout << change; //output the change variable after loop
Результат будет выводить:
1 50 dollar bill
0.00
Однако, когда я изменяю числа, соответствующие 20 долларовых купюр мой код выглядит следующим образом:
//for loop for twenty dollar bills
for (int twen = change; twen <= 40 && twen >=20 ; twen -=20)
{
c++; //count variable
change = twen - 20;
}
if (c == 1)
cout << c << " $20 dollar bill\n";
else if (c > 1)
cout << c << " $20 dollar bills\n";
else
cout << "";
cout << change;
И выходное число всегда изменяется для количества для вывода. Например, если я введу 40:
32661 $20 dollar bills
0.00
Есть идеи, что я делаю неправильно?