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

  Program to compute diameter in centimeters of a steel rod

Write a program to compute the diameter in centimeters of a steel rod, an aluminum rod, and a copper rod, which can withstand a particular compression load.

  Write a matrix multiplication program

Write a C++, matrix multiplication program which you can instrument to monitor and measure execution time as a function of problem size. Make sure it works in Microsoft Visual Studio.

  Why does the neverwet spray protect it from water

As is know, acetone is a polar molecule like water, so isn't it suppose to mix? So my question is: why does the Neverwet spray protect it from water but not from oils and detergents?

  Techniques for information hiding and encapsulation

What techniques did you utilize for information hiding and encapsulation? Are there any improvements you would make? If so, what would they be?

  Pros and cons of choosing two servers

Classify the two alternatives in terms of what type of application architecture they use. b. Outline the pros and cons of the two alternatives and make a recommendation to Fred about which is better.

  Calculate the component voltages

Calculate the component voltages for the following series resonant RLC circuit

  Main function to input twenty integers in given range

Write a main function to input 20 integers in range of 1-6, function should count number of times the numbers 2 and 5 occur. function must declare statics variables count2 and count5.

  Write a bouncing ball video game

The balls bounces within the screen where the two horizontal walls are fixed

  Implementation of classes

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

  Write a program to crypt its input accordingly

Write a program to crypt its input according to a specified transformation scheme

  Create class integerset

Create class IntegerSet for which each object can hold integers in the range 0 through 100. Represent the set internally as a vector of bool values. Element a[i] is true if integer i is in the set. Element a[j] is false if integer j is not in the set..

  Use the top-down modular approach to design program

Use the top-down modular approach and pseudocode to design a suitable program to solve it. Where appropriate, use defensive programming techniques.

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