I wrote this program :
Code:
#include <iostream>
#include <iomanip>
#include <string>
#include <cstdlib>
#include <fstream>
using namespace std;
class Inventory{
private:
int itemNumber;
int quantity;
double cost;
double totalCost;
public:
Inventory ()
{
itemNumber = 0;
quantity = 0;
cost = 0;
totalCost = 0;
}
Inventory ( int n, int c, int q )
{
itemNumber = n;
quantity = q;
cost = c;
totalCost = setTotalCost();
}
void setItemNumber ( int number )
{
itemNumber = number;
}
void setQuantity ( int quant )
{
quantity = quant;
}
void setCost ( double cst )
{
cost= cst;
}
double setTotalCost ()
{
totalCost = quantity * cost;
return totalCost;
}
int getItemNumber ()
{
return itemNumber;
}
int getQuantity ()
{
return quantity;
}
double getCost ()
{
return cost;
}
double getTotalCost ()
{
return totalCost;
}
};
void Clear_Screen(void);
int main()
{
int it_number, it_quant;
float it_cost;
Inventory hammer, wrench, saw;
cout<<"\nEnter Item Number for hammers: ";
cin>>it_number;
hammer.setItemNumber(it_number);
cout<<"\nEnter quantity of hammers: ";
cin>>it_quant;
hammer.setQuantity(it_quant);
cout<<"\nEnter the cost of one hammer: ";
cin>>it_cost;
hammer.setCost(it_cost);
hammer.setTotalCost();
Clear_Screen();
cout<<"\nEnter Item Number for wrenches: ";
cin>>it_number;
wrench.setItemNumber(it_number);
cout<<"\nEnter quantity of wrenches: ";
cin>>it_quant;
wrench.setQuantity(it_quant);
cout<<"\nEnter the cost of one wrench: ";
cin>>it_cost;
wrench.setCost(it_cost);
wrench.setTotalCost();
Clear_Screen();
cout<<"\nEnter Item Number for saws: ";
cin>>it_number;
saw.setItemNumber(it_number);
cout<<"\nEnter quantity of saws: ";
cin>>it_quant;
saw.setQuantity(it_quant);
cout<<"\nEnter the cost of one saw: ";
cin>>it_cost;
saw.setCost(it_cost);
saw.setTotalCost();
Clear_Screen();
cout<<"________Item Number_______Quantity_______Cost___________Total Cost___________" << endl << endl;
cout<< setw(14) <<hammer.getItemNumber() << setw(16) << hammer.getQuantity() << setw(15)
<< hammer.getCost() << setw(20) << hammer.getTotalCost()<< endl;
cout << endl;
cout<< setw(14) <<wrench.getItemNumber() << setw(16) << wrench.getQuantity() << setw(15)
<< wrench.getCost() << setw(20) << wrench.getTotalCost()<< endl;
cout << endl;
cout<< setw(14) <<saw.getItemNumber() << setw(16) << saw.getQuantity() << setw(15)
<< saw.getCost() << setw(20) << saw.getTotalCost()<< endl;
cin.get(); cin.get();
cout << "\n\n Thank you for using the program!" << endl;
cout << "\n\n Press any key to exit" << endl;
getchar();
return 0;
}
void Clear_Screen(void)
{
#ifdef _WIN32
system("cls");
#else
system("clear");
#endif
}
And now I need to modify it so the input and output are member functions. I thought I had, but now when I get to the display, the output is all zeros. I can't see where i went wrong. Here is the new code:
Code:
#include <iostream>
#include <iomanip>
#include <string>
#include <cstdlib>
#include <fstream>
using namespace std;
class Inventory{
private:
int itemNumber;
int quantity;
double cost;
double totalCost;
public:
Inventory ()
{
itemNumber = 0;
quantity = 0;
cost = 0;
totalCost = 0;
}
Inventory ( int n, int c, int q )
{
itemNumber = n;
quantity = q;
cost = c;
totalCost = setTotalCost();
}
void setItemNumber ( int number )
{
itemNumber = number;
}
void setQuantity ( int quant )
{
quantity = quant;
}
void setCost ( double cst )
{
cost= cst;
}
double setTotalCost ()
{
totalCost = quantity * cost;
return totalCost;
}
int getItemNumber ()
{
return itemNumber;
}
int getQuantity ()
{
return quantity;
}
double getCost ()
{
return cost;
}
double getTotalCost ()
{
return totalCost;
}
void hammers()
{
Inventory hammer;
int it_number, it_quant;
float it_cost;
cout<<"\nEnter Item Number for hammers: ";
cin>>it_number;
hammer.setItemNumber(it_number);
cout<<"\nEnter quantity of hammers: ";
cin>>it_quant;
hammer.setQuantity(it_quant);
cout<<"\nEnter the cost of one hammer: ";
cin>>it_cost;
hammer.setCost(it_cost);
hammer.setTotalCost();
cin.get();
}
void wrenches()
{
Inventory wrench;
int it_number, it_quant;
float it_cost;
cout<<"\nEnter Item Number for wrenches: ";
cin>>it_number;
wrench.setItemNumber(it_number);
cout<<"\nEnter quantity of wrenches: ";
cin>>it_quant;
wrench.setQuantity(it_quant);
cout<<"\nEnter the cost of one wrench: ";
cin>>it_cost;
wrench.setCost(it_cost);
wrench.setTotalCost();
cin.get();
}
void saws()
{
Inventory saw;
int it_number, it_quant;
float it_cost;
cout<<"\nEnter Item Number for saws: ";
cin>>it_number;
saw.setItemNumber(it_number);
cout<<"\nEnter quantity of saws: ";
cin>>it_quant;
saw.setQuantity(it_quant);
cout<<"\nEnter the cost of one saw: ";
cin>>it_cost;
saw.setCost(it_cost);
saw.setTotalCost();
cin.get();
}
};
void Clear_Screen(void);
int main()
{
Inventory hammer, wrench, saw;
hammer.hammers();
Clear_Screen();
wrench.wrenches();
Clear_Screen();
saw.saws();
Clear_Screen();
cout<<"________Item Number_______Quantity_______Cost____________Total Cost___________" << endl << endl;
cout<< setw(14) <<hammer.getItemNumber() << setw(16) << hammer.getQuantity() << setw(15)
<< hammer.getCost() << setw(20) << hammer.getTotalCost()<< endl;
cout << endl;
cout<< setw(14) <<wrench.getItemNumber() << setw(16) << wrench.getQuantity() << setw(15)
<< wrench.getCost() << setw(20) << wrench.getTotalCost()<< endl;
cout << endl;
cout<< setw(14) <<saw.getItemNumber() << setw(16) << saw.getQuantity() << setw(15)
<< saw.getCost() << setw(20) << saw.getTotalCost()<< endl;
cout << "\n\n Thank you for using the program!" << endl;
cout << "\n\n Press any key to exit" << endl;
getchar();
return 0;
}
void Clear_Screen(void)
{
#ifdef _WIN32
system("cls");
#else
system("clear");
#endif
}