Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // vendingMachine.cpp : Defines the entry point for the console application.
- //
- #include "stdafx.h"
- #include <iostream>
- #include <string>
- using namespace std;
- class CSnacks
- {
- string nameSnacks;
- double price;
- int stockList;
- int soldList;
- double moneyGained;
- public:
- CSnacks();
- CSnacks(string , double,int);
- ~CSnacks();
- bool buyItem(double& moneyEntered);
- void setSnacksVal(string str , double iprice , int iInStock);
- void getSnacksVal(string &str,double &rate,int &instock);
- void getQuarter(double&);
- void displayVendingMachine();
- };
- CSnacks::CSnacks()
- {
- nameSnacks = "";
- price = 0.0;
- stockList = 0;
- soldList = 0;
- }
- CSnacks::CSnacks(string str,double dval,int ival)
- {
- nameSnacks = str;
- price = dval;
- stockList = ival;
- soldList = 0;
- }
- CSnacks::~CSnacks()
- {
- cout<<""<<soldList;
- }
- bool CSnacks::buyItem(double& moneyEntered)
- {
- bool bVal = false;
- if(moneyEntered>price)
- {
- moneyEntered = moneyEntered-price;
- stockList--;
- soldList++;
- bVal = true;
- }
- return bVal;
- }
- void CSnacks::displayVendingMachine()
- {
- cout<<1<<" "<<nameSnacks<<" "<<price<<" "<<stockList<<endl;
- }
- void CSnacks::getQuarter(double& iRate)
- {
- iRate = price;
- }
- void CSnacks::setSnacksVal(string str , double iprice , int iInStock)
- {
- nameSnacks = str;
- price = iprice;
- stockList = iInStock;
- }
- void CSnacks::getSnacksVal(string &str,double &rate,int &instock)
- {
- str = nameSnacks;
- rate = price;
- instock = stockList;
- }
- int _tmain(int argc, _TCHAR* argv[])
- {
- CSnacks *objSnacks[3];
- objSnacks[0] = new CSnacks;//chips
- objSnacks[0]->setSnacksVal("chips",1.75,3);
- objSnacks[1] = new CSnacks("candy",1.25,5);//candy
- objSnacks[2] = new CSnacks("soda",1.00,2);//soda
- cout<<"Item# "<<"ItemName "<<"Price "<<"Instock "<<endl;
- cout<<".........................................."<<endl;
- for (int i =0 ; i<3 ;i++)
- {
- objSnacks[i]->displayVendingMachine();
- }
- int iquarter;
- double drate;
- cout<<"enter the number of quarter = "<<endl;
- cin>>iquarter;
- switch(iquarter)
- {
- case 3:
- {
- objSnacks[0]->getQuarter(drate);
- cout<<"Amount Entered = "<<drate<<endl;
- }
- break;
- case 5:
- {
- objSnacks[1]->getQuarter(drate);
- cout<<"Amount Entered = "<<drate<<endl;
- }
- break;
- case 2:
- {
- objSnacks[2]->getQuarter(drate);
- cout<<"Amount Entered = "<<drate<<endl;
- }
- break;
- default:
- cout<<" .. "<<endl;
- }
- cout<<"Enter a number between 1 to 3 to make your selection"<<endl;
- int ienterVal;
- cin>>ienterVal;
- switch (ienterVal)
- {
- case 1:
- {
- bool ret = objSnacks[0]->buyItem(drate);
- cout<<"$"<<drate<<"dispensed below"<<endl;
- }
- break;
- case 2:
- {
- bool ret = objSnacks[1]->buyItem(drate);
- cout<<"$"<<drate<<"dispensed below"<<endl;
- }
- break;
- case 3:
- {
- bool ret = objSnacks[2]->buyItem(drate);
- cout<<"$"<<drate<<"dispensed below"<<endl;
- }
- break;
- default:
- cout<<" .. "<<endl;
- }
- cout<<"continue? (Y/N)"<<endl;
- char ch;
- cin>>ch;
- if(ch == 'y' || ch == 'Y')
- {
- cout<<"Item# "<<"ItemName "<<"Price "<<"Instock "<<endl;
- cout<<".........................................."<<endl;
- for (int i =0 ; i<3 ;i++)
- {
- objSnacks[i]->displayVendingMachine();
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement