Grocery store program

Assignment Help C/C++ Programming
Reference no: EM1364972

Program in C language, use Microsoft Visual Studio the attachment has the program requirements and the text file has the grocery_list.txt with its price and quantity.

Grocery Store 

This program draws upon several concepts that were covered in CptS 121 and should serve as a good refresher for CptS 122. Our store, Cougar Mart, maintains its inventory in a text file. Not being very tech savvy, the owner of Cougar Mart needs you to build a C program (No C++) to read from and maintain the list of currently stocked items. The program will also simulate a simple shopping cart in which customers may add items. 

File Format 

Your program should read a file called "grocery_list.txt" (see included file for an example file). Each line of the file contains one grocery item. Each item contains three pieces of information: the name of the item, the item's quantity, and the item's cost. Each piece of information is separated by a colon (:). For example, "cheese:5:6" means that the item's name is "cheese", that there are 5 pieces of cheese in stock, and that each piece of cheese costs $6. Recall that one possible method for breaking up the information is to use strtok() (see https://www.cplusplus.com for more information). Alternatively, you can just manually track the location of the colons and make substrings as needed using a FOR loop.

Sample Output 

Below is the desired output of your program. Note that the number of items that I test will be different from the number of items listed in the sample output. As such, you will need to use a vector, similar to what was developed in class and in lab, to complete your assignment. 

Welcome to Cougar Mart! 
 
How much money do you have?: a 
Invalid input. Please try again 
 
How much money do you have?: 4 
 
Here's what we have in stock today: 
*** apples $1 (qty: 5) 
*** milk $2 (qty: 3) 
*** bread $1 (qty: 3) 
*** candy $1 (qty: 10) 
*** cheese $6 (qty: 5) 
*** oranges $2 (qty: 4) 
*** cherries $2 (qty: 3) 
 
You have $4 
What would you like to put into your cart: oranges 
Would you like to continue shopping? (y/n): y 
 
 
Here's what we have in stock today: 
*** apples $1 (qty: 5) 
*** milk $2 (qty: 3) 
*** bread $1 (qty: 3) 
*** candy $1 (qty: 10) 
*** cheese $6 (qty: 5)
*** oranges $2 (qty: 3) 
*** cherries $2 (qty: 3) 
 
You have $2 
What would you like to put into your cart: apples 
Would you like to continue shopping? (y/n): y 
 
 
Here's what we have in stock today: 
*** apples $1 (qty: 4) 
*** milk $2 (qty: 3) 
*** bread $1 (qty: 3) 
*** candy $1 (qty: 10) 
*** cheese $6 (qty: 5) 
*** oranges $2 (qty: 3) 
*** cherries $2 (qty: 3) 
 
You have $1 
What would you like to put into your cart: milk 
Sorry, you don't have enough money! 
Would you like to continue shopping? (y/n): y 
 
 
Here's what we have in stock today: 
*** apples $1 (qty: 4) 
*** milk $2 (qty: 3) 
*** bread $1 (qty: 3) 
*** candy $1 (qty: 10) 
*** cheese $6 (qty: 5) 
*** oranges $2 (qty: 3) 
*** cherries $2 (qty: 3) 
 
You have $1 
What would you like to put into your cart: butter 
Sorry, we're all out of butter today. 
Would you like to continue shopping? (y/n): y 
 
 
Here's what we have in stock today: 
*** apples $1 (qty: 4) 
*** milk $2 (qty: 3) 
*** bread $1 (qty: 3) 
*** candy $1 (qty: 10) 
*** cheese $6 (qty: 5) 
*** oranges $2 (qty: 3) 
*** cherries $2 (qty: 3) 
 
You have $1 
What would you like to put into your cart: candy 
Would you like to continue shopping? (y/n): n 
 
Here's what you've added to your shopping cart: 
* oranges 
* apples 
* candy 
You spent $4 and have $0 left over. 
Thank you, come again!
Program Flow 
Your program should operate in the following manner: 
Open the file "grocery_list.txt". 
Read the names and quantities of items from the text file. 
Prompt the user for the amount of money that they currently have. 
Until the shopper decides to exit, do the following: 
o Display a menu with the currently stocked items, their cost, and their quantities. 
o Ask the shopper what they'd like to add to their cart. 
o If the item exists and there is sufficient quantity, add the item to their cart. 
o If the item does not exist, let the user that the item is not in stock. 
o If the item costs more than what the users has, let the user know that they have insufficient funds to make the purchase. 
o Update the list of items currently in stock to reflect the new quantities. 
After the user has decided to exit, display the current contents of the shopping cart along with how much was spent and how much money the user has left over. 
Note that the program should also write back to "grocery_list.txt" with the updated quantity of items. 
grocery_list.txt file contains text
apples:5:1
milk:3:2
bread:3:1
candy:10:1
cheese:5:6
oranges:4:2
cherries:3:2

Reference no: EM1364972

Questions Cloud

Can you tell how operations management changed over years : current technology and future trends. How fast will it take African countries, China, and India to catch up and surpass the United States and other developed countries?
What are the magnitude and direction of the net force : What are the magnitude and direction of the net force. how long does it take for the police car to catch up with the speeder.
Operating segment aggregation : When can information about two operating segments be aggregated? How is accounting for pensions different than accounting for other post-retirement benefits?
Comparison of health systems in different countries : Is the comparison of health systems in different countries a worthwhile endeavour? Support your response with examples of the difficulties and benefits of performing such a study.
Grocery store program : This program draws upon several concepts that were covered in CptS 121 and should serve as a good refresher for CptS 122. Our store, Cougar Mart, maintains its inventory in a text file. Not being very tech savvy, the owner of Cougar Mart needs you to..
Design program to compute-display number of miles per hour : Design a program that calculates and displays the number of miles per hour over the speed limit that a speeding driver was doing.
Determine new funds needed to finance the growth : Owen's Electronics has 90 operating plants in seven southwestern states. Sales for last year were $100 million, and balance sheet at year end is same in % of sales to that of previous years.
Manage scope creep : Project foundations (operational requirements, system requirements, design constraints, and software requirements) determine the scope of work to be accomplished in a project.
Type of market-reimbursement method : What is the difference between capitation and fee for service (FFS)? Describe the type of market appropriate for each reimbursement method.

Reviews

Write a Review

C/C++ Programming Questions & Answers

  Create program that uses functions and reference parameters

Create program that uses functions and reference parameters, and asks user for the outside temperature.

  Write a program using vectors and iterators

Write a program using vectors and iterators that allows a user to maintain a personal list of DVD titles

  Write the code required to analyse and display the data

Calculate and store the average for each row and column. Determine and store the values for the Average Map.

  Write a webservices application

Write a webservices application that does a simple four function calculator

  Iimplement a client-server of the game

Iimplement a client-server version of the rock-paper-scissors-lizard-Spock game.

  Model-view-controller

Explain Model-View-Controller paradigm

  Design a nested program

How many levels of nesting are there in this design?

  Convert celsius temperatures to fahrenheit temperatures

Write a C++ program that converts Celsius Temperatures to Fahrenheit Temperatures.

  Evaluate and output the value in the given base

Write C program that will input two values from the user that are a Value and a Base with which you will evaluate and output the Value in the given Base.

  Design a base class shape with virtual functions

Design a base class shape with virtual functions

  Implementation of classes

Implementation of classes Chart and BarChart. Class barChart chould display a simple textual representation of the data

  Technical paper: memory management

Technical Paper: Memory Management, The intent of this paper is to provide you with an in depth knowledge of how memory is used in executing, your programs and its critical support for applications.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd