C++ || Cash Register Simulation – Display The Total Sales Amount In Dollars & Cents Using Modulus
The following is a simple program which demonstrates more use of the modulus (%) function to manipulate integer data.
REQUIRED KNOWLEDGE FOR THIS PROGRAM
This program first prompts the user to enter in a monetary amount into the system. This number can be a decimal number, or a whole number. Once the user enters in an amount, the program will use the modulus operator to determine exactly how many 1 dollar bills, quarters, dimes, nickles, and pennies consisted of the amount that the user entered into the program. So for example, if the user entered the value of 2.34, the program would display the result of 2 dollars, 1 quarters, 0 dimes, 1 nickels, and 4 pennies.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
// ============================================================================ // Author: Kenneth Perkins // Date: Feb 28, 2012 // Taken From: http://programmingnotes.org/ // File: MakeChange.cpp // Description: The following is a simple program which demonstrates // how to make change. // ============================================================================ #include<iostream> using namespace std; int main() { // declare variables double initialAmount = 0; int remainingAmount = 0; int numberOfOneDollars = 0; int numberOfQuarters = 0; int numberOfDimes = 0; int numberOfNickels = 0; int numberOfPennies = 0; // Receive the amount cout << "Enter the total sales amount in dollars & cents (for example 19.87): "; cin >> initialAmount; // convert a 'double' to 'int' value remainingAmount = static_cast<int>(initialAmount * 100); // Find the number of one dollars numberOfOneDollars = remainingAmount / 100; remainingAmount = remainingAmount % 100; // Find the number of quarters in the remaining amount numberOfQuarters = remainingAmount / 25; remainingAmount = remainingAmount % 25; // Find the number of dimes in the remaining amount numberOfDimes = remainingAmount / 10; remainingAmount = remainingAmount % 10; // Find the number of nickels in the remaining amount numberOfNickels = remainingAmount / 5; remainingAmount = remainingAmount % 5; // Find the number of pennies in the remaining amount numberOfPennies = remainingAmount; // Display the results cout << "\nThe amount of $" << initialAmount << " consists of: \n" << "\t" << numberOfOneDollars << " dollar(s)\n" << "\t" << numberOfQuarters << " quarter(s)\n" << "\t" << numberOfDimes << " dime(s)\n" << "\t" << numberOfNickels << " nickel(s)\n" << "\t" << numberOfPennies << " pennie(s)\n"; return 0; }// http://programmingnotes.org/ |
QUICK NOTES:
The highlighted lines are sections of interest to look out for.
The code is heavily commented, so no further insight is necessary. If you have any questions, feel free to leave a comment below.
Once compiled, you should get this as your output
(Note: the code was compile three separate times to display different output)
====== RUN 1 ======
Enter the total sales amount in dollars & cents (for example 19.87): 19.87
The amount of $19.87 consists of:
19 dollar(s)
3 quarter(s)
1 dime(s)
0 nickel(s)
2 pennie(s)====== RUN 2 ======
Enter the total sales amount in dollars & cents (for example 19.87): 11.93
The amount of $11.93 consists of:
11 dollar(s)
3 quarter(s)
1 dime(s)
1 nickel(s)
3 pennie(s)====== RUN 3 ======
Enter the total sales amount in dollars & cents (for example 19.87): 3.00
The amount of $3 consists of:
3 dollar(s)
0 quarter(s)
0 dime(s)
0 nickel(s)
0 pennie(s)
Leave a Reply