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.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
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
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education