Ask Question, Ask an Expert


Ask C/C++ Expert

Home >> C/C++

Assignment Definition:

This assignment requires the development of C++ software that supports the activities of an imaginary on-line food service (i.e., software that simulates the selection and payment of food items over computer networks). Your on-line food service should be able to process the following basic actions.

• Addition of food items (by name and quantity) to a customer shopping cart.
• Removal of food items (by name and quantity) from a customer shopping cart.
• Report of items in customer shopping cart. (Created on demand and after checkout.)
• Payment for items in a customer shopping cart (i.e., customer checkout) with a credit card number.
• Addition of food item quantity to the inventory of the food service (i.e., re-stocking)
• Summary report of all previous food purchases. (Created on demand.)

Assumptions and Minimum Data Requirements:

1383_data requirements.jpg

Implementation Requirements:
You must use the following features or structures of the C++ programming language.

• Five (5) or more programmer-defined classes including at least one (1) instance of inheritance.
• At least one (1) use of polymorphism and at least one (1) use of composition.
• Initialization of class data must be performed in class constructors.
• Pointer data types, the C++ String class, and at least one instance of operator overloading.
• At least one use of a template from the standard template library.
• Exception handling must be implemented to validate user inputs.
• Customer, cart, and inventory data must be saved on disk and retrieved each time your program runs.
• Customer, re-stocking lists and “initial” inventory data should be pre-loaded into text files.
• All user input and output should be implemented with a simple text-based console window.

Data Definitions:

You must decide the best organization and classification (i.e., class definitions) of the following items to support your application processing. Other data definitions and structures may be added as necessary. These definitions are only suggestions – not mandatory requirements.

Customer: name or ID, credit card number, current shopping cart number
Food Item: food item name and current price
Cart: cart number, list of food item names with associated quantity and prices
Inventory: list of food items on hand with associated quantity
Credit Card: card number and remaining balance


Shopping Cart

Customers may request to see the contents of their shopping cart at any time. Upon request, you must display the following information (in any programmer-defined format). Also print this same report at checkout.

Customer name, cart number, and appropriate heading for cart report or checkout.

Itemized list of food items in the cart with:

• food item name;
• food item quantity;
• food item cost (i.e., per item cost); and
• total cost of all selections for this customer.

Summary of Food Purchases:

This is a report which summarizes all previous food purchases. Each time the report is requested, the following output should be produced:

• food items names;
• total quantity sold for each food item;
• total sales for each food item; and
• total of all sales for all food items.

Test Data and Error Messages:

Create your own test data for this assignment. Print an appropriate error message whenever requested quantity exceed supply (e.g., when customers ask for more food than current amount in inventory or when total cost of food at checkout exceeds balance on credit card). See following samples.

“Sorry. Not enough  s  for your selection. Request ignored.”
“Sorry. Checkout cancelled due to insufficient funds on credit card. Cart emptied and returned to store.”


You must insert numerous comments throughout the source code listings.

Required Items to be Submitted for Stages of Development:

Stage 1: Pictures of user screens (input prompts and sample outputs). UML class diagrams including inheritance.
Stage 2: Description of data files and illustration showing which class methods access each file.
Stage 3: Final tested version of program with documentation.

C/C++, Programming

  • Category:- C/C++
  • Reference No.:- M91816

Have any Question? 

Related Questions in C/C++

A compiler that translates a high-level language into

A compiler that translates a high-level language into another high-level language is called a source-to-source translator. What advantages are there to using C as a target language for a compiler?

Assignment part acreate a checkbook program using c

Assignment (part a) Create a Checkbook program using C : • Create a Check structure. Include:   o Check number (should be an integer).   o Date (use type char[ ]).   o To   o Amount   o Description • Add functions to:   ...

Programming in c assignmentwrite a c program that computes

Programming in C Assignment Write a C program that computes and outputs the current age of the United States in days (you can use 1776 as theUS founding year). You don't have to worry about fractional years or leap years ...

Assignmentconsider the following declarationsclass

Assignment Consider the following declarations: class bagType { public: void set(string, double, double, double, double); void print() const; string getStyle() const; double getPrice() const; void get(double, double, dou ...

Write a c program that calculates and prints the average of

Write a C program that calculates and prints the average of two or more salaries entered by the user. The program should first prompt the user to enter the number of salaries to process (make sure: at least 2 salaries mu ...

Create your own unique while-end repetition structure you

Create your own unique While-End repetition structure. You decide the theme. You should provide both the pseudocode and the flowchart of your example. Be sure to provide an overview of what your repetition structure is d ...

C-programmingcreate a c program that sorts a sequence of

C-Programming Create a C program that sorts a sequence of positive numbers using the bubble sort algorithm in an increasing or decreasing order based on the user's choice. The pseudo code for the bubble sort algorithm is ...

Practice with pointers and dynamic memory

Practice with pointers and dynamic memory allocation Problem: Write a C++ program that will implement and test the four functions described below that use pointers and dynamic memory allocation. The Functions: You will w ...

Assignmentthis assignment gives you the opportunity to

Assignment This assignment gives you the opportunity to practice array of pointers, linked lists and self referential structures. Write a program that initializes two parallel arrays as follows: char * String[] = { "Abbi ...

Writing a c code its a beginner level code design a class

Writing a C++ code, its a beginner level code. Design a class house that defines a house on a street. A house has a house number and an (x,y) location, where x and y are numbers between -10 and 10. the key member is plot ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen