IN PYTHON PLEASE AND FLOWCHART DRAWING COPUTERIZED PLEASE!!   In many businesses across the country, people are buying food and goods using cash. Whenever a purchase is made with cash, it is usual that change must be back to the customer. Business point of sales software help to ensure that the correct change is return to a customer by providing detailed information of the change that should be returned to the customer. using the fewest number of bills and coins. In this assignment, you are asked to design and implement a program that writes out what bills (ones, fives, tens, twenties) and coins (pennies, nickels, dimes, and quarters) that should be returned to the customer given two inputs from the user: A total cost of a sale. The amount that was paid by the customer. Ensure that your output is grammatically correct. If the customer does not provide adequate payment, you should print the following statement, the program should end. Did not receive enough cash from the customer. Design a solution To design your program, start by thinking about how you would go about solving this problem using onlyarithmetic operators and conditional statements, the elements of programming that we have learned thus far in this course. Take the time to draw your solution as a flowchart. You can do this using a drawing tool such as draw.io (Links to an external site.) or by simply drawing your flowchart on paper. Either way turn your flowchart into a pdf file called "giving_change.pdf" and commit it to your repo. Hint: How would the %, //, and / operators each be useful to you for solving this problem? Example output Enter total cost of purchase: 45.56 Enter amount paid: 60.00 Change to be given: 14.44 1 ten 4 ones 1 quarter 1 dime 1 nickel 4 pennies Testing This is a great assignment to start thinking about testing. What inputs would you want to use to thoroughly test your solution? As you figure out these tests, you should document each one. To do this, create a text file called "giving_change_tests.txt" and in it specify what series of tests you will use to thoroughly test your solution. For each test, specify the amount to be entered and the expected output. One such test could be: Enter amount: 123.45 6 twenties 3 ones 1 quarter 2 dimes Implementation Implement the algorithm that you created when you designed your solution in a file called "giving_change.py". Hint: You may have heard about the following built-in function: Function -- round(number, [ndigits]) Round the number to the specified number of digits. Parameters: number --the value to be rounded ndigits -- the precision to use. If `ndigits` is omitted or is `None`, it returns the nearest integer to its input. Returns the rounded number The behavior of round() for floats can be surprising: for example, round(2.675, 2) gives 2.67 instead of the expected 2.68. This is not a bug: it’s a result of the fact that most decimal money values can’t be represented exactly as a float. To avoid this issue, use round() in the very beginning to convert your floats to integers.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter5: Control Structures Ii (repetition)
Section: Chapter Questions
Problem 20PE: When you borrow money to buy a house, a car, or for some other purpose, you repay the loan by making...
icon
Related questions
Question

IN PYTHON PLEASE AND FLOWCHART DRAWING COPUTERIZED PLEASE!!

 

In many businesses across the country, people are buying food and goods using cash. Whenever a purchase is made with cash, it is usual that change must be back to the customer. Business point of sales software help to ensure that the correct change is return to a customer by providing detailed information of the change that should be returned to the customer. using the fewest number of bills and coins.

In this assignment, you are asked to design and implement a program that writes out what bills (ones, fives, tens, twenties) and coins (pennies, nickels, dimes, and quarters) that should be returned to the customer given two inputs from the user:

  1. A total cost of a sale.
  2. The amount that was paid by the customer.

Ensure that your output is grammatically correct.

If the customer does not provide adequate payment, you should print the following statement, the program should end.

Did not receive enough cash from the customer.

Design a solution

To design your program, start by thinking about how you would go about solving this problem using onlyarithmetic operators and conditional statements, the elements of programming that we have learned thus far in this course. Take the time to draw your solution as a flowchart. You can do this using a drawing tool such as draw.io (Links to an external site.) or by simply drawing your flowchart on paper. Either way turn your flowchart into a pdf file called "giving_change.pdf" and commit it to your repo.

Hint: How would the %, //, and / operators each be useful to you for solving this problem?

Example output

Enter total cost of purchase: 45.56 Enter amount paid: 60.00 Change to be given: 14.44 1 ten 4 ones 1 quarter 1 dime 1 nickel 4 pennies

Testing

This is a great assignment to start thinking about testing. What inputs would you want to use to thoroughly test your solution? As you figure out these tests, you should document each one. To do this, create a text file called "giving_change_tests.txt" and in it specify what series of tests you will use to thoroughly test your solution. For each test, specify the amount to be entered and the expected output. One such test could be:

Enter amount: 123.45 6 twenties 3 ones 1 quarter 2 dimes

Implementation

Implement the algorithm that you created when you designed your solution in a file called "giving_change.py".

Hint: You may have heard about the following built-in function:

Function -- round(number, [ndigits]) Round the number to the specified number of digits. Parameters: number --the value to be rounded ndigits -- the precision to use. If `ndigits` is omitted or is `None`, it returns the nearest integer to its input. Returns the rounded number

The behavior of round() for floats can be surprising: for example, round(2.675, 2) gives 2.67 instead of the expected 2.68. This is not a bug: it’s a result of the fact that most decimal money values can’t be represented exactly as a float. To avoid this issue, use round() in the very beginning to convert your floats to integers.

Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Mathematical functions
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT