# Question about C++ programing homework

I am attempting to write a C++ program to count change.  For example if the bill amount is \$56.23 and I was give \$100.00 the change would be \$43.77.  The program needs to figure out the number of 10 dollar 5 dollar and 1 dollar bills as well as the quarters nickles and dimes to give back.  I wrote the code below and it works until it calculates the quarters and then it starts to mess up.  An help would be great thanks
``````#include <iostream>
using namespace ::std;

int main()
{
float bill = 0;
float paid = 0;
int bill1 = 0;
int paid1 = 0;
int totalchange = 0;
int changerm0 = 0;
int changerm1 = 0;
int changerm2 = 0;
int changerm3 = 0;
int changerm4 = 0;
int changerm5 = 0;
int changerm6 = 0;
int numten = 0;
int numfive = 0;
int numone = 0;
int numquarter = 0;
int numdime = 0;
int numnickel = 0;
int numpenny = 0;
cout << "Please Enter The Amount of the Bill: \n";
cin >> bill;
bill1 = bill*100;
cout << "Please Enter The Amount paid: \n";
cin >> paid;
paid1 = paid*100;
totalchange = (paid1 - bill1);
numten = totalchange/1000;
changerm0 = totalchange % 1000;
numfive = changerm0/500;
changerm1 = changerm0 % 500;
numone = changerm1/100;
changerm2 = changerm1 % 100;
numquarter = changerm2/025;
changerm3 = changerm2 % 025;
numdime = changerm3/010;
changerm4 = changerm3 % 010;
numnickel = changerm4/005;
changerm5 = changerm4 % 005;
numpenny = changerm5/001;
//changerm = q1%010;
cout << "Give the customer the following change: \n";
cout << bill1 <<" \n";
cout << paid1 <<" \n";
cout << totalchange <<" \n";
cout << numdime << " \$10 bills. \n";
cout << changerm0 << " changerm0. \n";
cout << numnickel << " \$5 bills. \n";
cout << changerm1 << " changerm1. \n";
cout << changerm2 << " changerm2. \n";
cout << changerm3 << " changerm3. \n";
cout << changerm4 << " changerm4. \n";
cout << changerm5 << " changerm5. \n";
cout << numone << " \$1 bills. \n";
cout << numquarter << " quarters. \n";
cout << numdime << " dimes. \n";
cout << numnickel << " nickles. \n";
cout << numpenny << " pennies. \n";
cout << "Have a nice day: \n";
system("\npause");
return 0;
}
``````
###### Who is Participating?

Commented:
The real issue is that entering the numbers 010 (= 8) 025 (=21) 005 (=5) will assume octal. Dont prefix numbers unless you need to.
0

Commented:
>> and then it starts to mess up

Can you clarify, or do you expect us to run your program and find out what you mean? :)
0

Commented:
Here you go. Fixed some minor errors, see comments
``````#include <iostream>
using namespace ::std;

int main()
{
float bill = 0;
float paid = 0;
int bill1 = 0;
float paid1 = 0;			//changed to float
float totalchange = 0;   //changed to float
int changerm0 = 0;
int changerm1 = 0;
int changerm2 = 0;
int changerm3 = 0;
int changerm4 = 0;
int changerm5 = 0;
int changerm6 = 0;
int numten = 0;
int numfive = 0;
int numone = 0;
int numquarter = 0;
int numdime = 0;
int numnickel = 0;
int numpenny = 0;
cout << "Please Enter The Amount of the Bill: \n";
cin >> bill;
bill1 = bill*100;
cout << "Please Enter The Amount paid: \n";
cin >> paid;

paid1 = paid*100;
totalchange = bill1 - paid1;  //use this or abs()

numten = totalchange/1000;

changerm0 = (int)totalchange % 1000;
numfive = changerm0/500;
changerm1 = changerm0 % 500;
numone = changerm1/100;
changerm2 = changerm1 % 100;

numquarter = changerm2/25;
changerm3 = changerm2 % 25;

numdime = changerm3/10;
changerm4 = changerm3 % 10;
numnickel = changerm4/5;
changerm5 = changerm4 % 5;
numpenny = changerm5/1;
//changerm = q1%010;
cout << "Give the customer the following change: \n";
cout << bill1 <<" \n";
cout << paid1 <<" \n";
cout << totalchange <<" \n";
cout << numten << " \$10 bills. \n";	//wrong var, changed to numten
cout << changerm0 << " changerm0. \n";
cout << numfive << " \$5 bills. \n";	//wrong var, changed to numfive
cout << changerm1 << " changerm1. \n";
cout << changerm2 << " changerm2. \n";
cout << changerm3 << " changerm3. \n";
cout << changerm4 << " changerm4. \n";
cout << changerm5 << " changerm5. \n";
cout << numone << " \$1 bills. \n";
cout << numquarter << " quarters. \n";
cout << numdime << " dimes. \n";
cout << numnickel << " nickles. \n";
cout << numpenny << " pennies. \n";
cout << "Have a nice day: \n";
system("\npause");
return 0;
}
``````
0

Commented:
0

Author Commented:
Yes, I figured that out last night.  Thanks for the help.  I will be more discriptive with my issues in the future.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.