LAB ACTIVITY

57 views 9:01 am 0 Comments March 20, 2023

15.18 Ch 7 Warm up: Online shopping cart (C++)

(1) Create three files to submit:

  • ItemToPurchase.h – Class declaration
  • ItemToPurchase.cpp – Class definition
  • main.cpp – main() function

Build the ItemToPurchase class with the following specifications:

  • Default constructor
  • Public class functions (mutators & accessors)
    • SetName() & GetName() (2 pts)
    • SetPrice() & GetPrice() (2 pts)
    • SetQuantity() & GetQuantity() (2 pts)
  • Private data members
    • string itemName – Initialized in default constructor to “none”
    • int itemPrice – Initialized in default constructor to 0
    • int itemQuantity – Initialized in default constructor to 0

(2) In main(), prompt the user for two items and create two objects of the ItemToPurchase class. Before prompting for the second item, call cin.ignore() to allow the user to input a new string. (2 pts)

Ex:

Item 1

Enter the item name:

Chocolate Chips

Enter the item price:

3

Enter the item quantity:

1

 

Item 2

Enter the item name:

Bottled Water

Enter the item price:

1

Enter the item quantity:

10

(3) Add the costs of the two items together and output the total cost. (2 pts)

Ex:

TOTAL COST

Chocolate Chips 1 @ $3 = $3

Bottled Water 10 @ $1 = $10

 

Total: $13

466888.3263274.qx3zqy7

LAB ACTIVITY

15.18.1: Ch 7 Warm up: Online shopping cart (C++)

0 / 10

Submission Instructions

Compile command

g++ main.cpp ItemToPurchase.cpp -Wall -o a.out

We will use this command to compile your code

Upload your files below by dragging and dropping into the area or choosing a file on your hard drive.

main.cpp

checkFile addedRemove

ItemToPurchase.cpp

Drag file hereorChoose on hard drive.

ItemToPurchase.h

Drag file hereorChoose on hard drive.

 

 

Program:

ItemToPurchase.h

#ifndef ITEMPURCHASEH
#define ITEMPURCHASEH
using namespace std;
//class Declaration
class ItemToPurchase
{
//declare private variables
private:
string itemName;
int itemPrice;
int itemQuantity;
//declare public methods
public:
//constructor
ItemToPurchase();
//methods
void SetName(string name);
string GetName();
void SetPrice(int price);
int GetPrice();
void SetQuantity(int quantity);
int GetQuantity();
};
#endif

ItemToPurchase.cpp

#include <iostream>
#include “ItemToPurchase.h”
using namespace std;
//constructor definition
ItemToPurchase::ItemToPurchase():itemName(“none”),itemPrice(0),itemQuantity(0){}
//method definitions
void ItemToPurchase::SetName(string name)
{
itemName=name;
}
string ItemToPurchase::GetName()
{
return itemName;
}
void ItemToPurchase::SetPrice(int price)
{
itemPrice=price;
}
int ItemToPurchase::GetPrice()
{
return itemPrice;
}
void ItemToPurchase::SetQuantity(int quantity)
{
itemQuantity=quantity;
}
int ItemToPurchase::GetQuantity()
{
return itemQuantity;
}

main.cpp

#include <iostream>
#include “ItemToPurchase.h”
using namespace std;
//main() function
int main()
{
//declare variables
string name;
int price;
int quantity;
//create two objects of ItemToPurchase class
ItemToPurchase item1,item2;
//get item1 details
cout<<“Item 1″<<endl;
cout<<“Enter the item name: “<<endl;
getline(cin,name);
cout<<“Enter the item price: “<<endl;
cin>>price;
cout<<“Enter the item price: “<<endl;
cin>>quantity;
//call methods and set variables values
item1.SetName(name);
item1.SetPrice(price);
item1.SetQuantity(quantity);
cin.ignore();
//get item2 details
cout<<“Item 2″<<endl;
cout<<“Enter the item name: “<<endl;
getline(cin,name);
cout<<“Enter the item price: “<<endl;
cin>>price;
cout<<“Enter the item price: “<<endl;
cin>>quantity;
//call methods and set variables values
item2.SetName(name);
item2.SetPrice(price);
item2.SetQuantity(quantity);
cout<<“TOTAL COST”<<endl;
//calculate item1 and item2 COST
int item1_cost=item1.GetQuantity()*item1.GetPrice();
int item2_cost=item2.GetQuantity()*item2.GetPrice();
//calculate total cost
int total_cost=item1_cost+item2_cost;
//display item1 and item2 details
cout<<item1.GetName()<<” “<<item1.GetQuantity()<<” @ $”<<item1.GetPrice()<<” = “<<item1_cost<<endl;
cout<<item2.GetName()<<” “<<item2.GetQuantity()<<” @ $”<<item2.GetPrice()<<” = “<<item2_cost<<endl;
cout<<endl<<“Total: $”<<total_cost;
return 0;
}