Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I'm using C++ please attach the cpp file if possible Modern grocery stores now often have a U-Scan checkout lane, allowing the customer to scan

I'm using C++ please attach the cpp file if possible

image text in transcribed

image text in transcribed

image text in transcribed

Modern grocery stores now often have a "U-Scan" checkout lane, allowing the customer to scan and check out their own groceries, without the need of a human checker. These lanes require that change be provided automatically, after the customer sticks their cash in a slot. You are to write a program that computes the bills and coins to be dispensed, minimizing the total number of bills and coins. (That is, for change totaling $5.50, you should not dispense 5 ones and 50 pennies, but a $5 bill and a 50-cent piece instead.) The bills and coins available for you to dispense are as follows: $100 bill, $50 bill, $20 bill, $10 bill, $5 bill, $1 bill, 50-cent coin, 25-cent coin, 10-cent coin, 5-cent coin, 1-cent coin The console-based program prompts the user to input 2 numbers. The first number is the amount of the purchase, and the second one is the amount tendered by the customer. You may assume that the amount tendered is greater than or equal to the amount of purchase. The console output will be a series of lines showing the amount of change returned and detailing the number of bills and coins that will be dispensed as change, in descending order of monetary amount, one unit per line. If a bill/coin is not needed in the change returned, no output is produced for that bill/coin. (In other words, do not display "O $1 bills".) Plural logic. Proper use of plurals is required, as shown in the sample below. This will require some if-else logic to decide whether or not to append an "s" to the end of a denomination name Here the sample for a purchase of 42.15, the amount tendered is 50. There are no $'s or commas in the input just positive real numbers that may or may not contain a decimal. Here is the output $7.85 1 $5 bill 2 $1 bills 1 50-cent coin 1 25-cent coin 1 10-cent coin The program ends normally after the output is produced. Here are some more samples, for a purchase of $13.30 and a tender of $15, and for a 1-cent purchase with a $500 bill $499.99 4 $100 bills $1.70 1 $1 bill 1 50-cent coin 1 $50 bill 2 10-cent coins 2 $20 bills 1 $5 bil1 4 $1 bills 1 50-cent coin 1 25-cent coin 2 10-cent coins 4 1-cent coins Steps In Software Development STEP 1 of 5: Getting Started Write your first version of the program with only an empty it main function. Name the cpe,file as you wish Verify that you can compile and run the program (which should do nothing!) Add your identifying comments and couts (with their required library includes), save, compile, and run again STEP 2 of 5: Collecting Input Add statements to prompt the user for the two numbers purchase amount and amount tendered. Allow the user to enter both amounts on the same input line, space-separated -- that is, use and do not use te on and run the program. Verify that you can compile STEP 3 of 5: Producing Output Calculate the amount of change returned, and output it with the proper formatting. Show the amount with two decimal places, representing cents, and be sure to account for floating point round-off errors. For example, if the purchase is 1.02, and the amount tendered is 1.10, then the change should be 0.08 not 0.079999999 and not 0.080000001, and certainly not 0.07. STEP 4 of 5: Solving Ihe Problem Write the C++ code blocks needed to determine the numbers of bills and coins to dispense in order to make the correct change. There is no trick logic in the US monetary system start with the highest denomination. Count out as many of that denomination as needed, one-by-one, until the remaining amount falls below the value of the denomination. Then go to the next lower denomination, etc. Do not use functions in this assignment Do not worry about formatting of the output at this point - focus on getting exact results STEP 5 of 5: Final Formatting Complete the formatting of the results as per the problem statement. Compile and run. Submit the completed CPP. Hints Hints This problem is not as easy as it seems. Be aware of the effects of round-off error, and remember not to test floating point values for exact equality. Remember that with floating point values and computers, 4 minus 2 can often result in 1.9999999999999999 instead of 2, and that is not greater or equal to 2! So instead of asking in an amount is greater than or equal to (for example) $50, ask if it's greater than $49.999 -- no need to check "or equal to". That allows for a round-off error of as much as 0.1 cents, which is way larger than one would ever expect, but not so large that it would overlap the next cent amount, $49.99 Cashiers solve this problem every day, without using division and dealing with remainders. So your program should be able to solve it too, without divide or modulus and without cmath, Think about it-it's not hard "Never assume anything!". Test your program with various input values. Try to break your own program before you give someone else the opportunity to do so don't forget your identification code blocks

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Design Application Development And Administration

Authors: Michael V. Mannino

4th Edition

0615231047, 978-0615231044

More Books

Students also viewed these Databases questions