Your friend who works at the superstore is urgently in need of your help with so
ID: 3875802 • Letter: Y
Question
Your friend who works at the superstore is urgently in need of your help with some basic sales records Consider a class Sales that keeps track of the sales of one item in the store. An object of this class will have the attributes -Name of the item Cost of the item Bulk quantity (to qualify for discount) -Discount (percentage) -Number sold Total amount Total discount and the following methods Constructor that sets the cost, bulk quantity and the discount Get and set methods for cost, bulk quantity and discount registerSale(int n) records the sale of n items. If n is larger than the bulk quantity, the cost will be reduced by the discount. displaySales displays the name of the item, number sold, the total amount, and total discount. Ignore sales tax Implement the class and test it. For example, for Item: Shampoo Cost: 2.500 Bulk quantity (to qualify for discount): 4 Discount: 10 percent Number sold: 10 The output would be: Shampoo Number sold: 10 Total amount: $ 22.50 Total discount: $ 2.50 Other Example Item: Toothpaste Cost: 1.9.9 Bulk quantity: 20 Discount: 15 Number sold: 10 The output would be Toothpaste Number sold: 10 Total amount: 19.90 Total discount: 0Explanation / Answer
Program for sales:-
Source code:-
//Header File
#include <iostream>
using namespace std;
//Class declaration
class sales{
//Variable Declaration
private:
string itemName;
double cost;
int bulkQuantity;
double discount;
double totalAmount;
double totalDiscount;
int salesQuantity;
//Methods declaration
public:
sales( );
void setItemName(string itemName);
void setSalesQuantity(int salesQuantity);
void setCost(double cost);
void setBulkQuantity(int bulkQuantity);
void setDiscount(double discount);
double registerSale(int n);
void displaySales();
string getItemName( );
double getCost( );
int getBulkQuantity( );
double getDiscount( );
int getSalesQuantity( );
};
//Constructor and method definition
sales::sales( )
{
string itemName="";
double cost=0.0;
int bulkQuantity=0;
double discount=0.0;
int salesQuantity=0;
}
//Set user enter values
void sales::setItemName(string iname)
{
itemName = iname;
}
void sales::setSalesQuantity(int sq)
{
salesQuantity = sq;
}
void sales::setCost(double c)
{
cost = c;
}
void sales::setBulkQuantity(int bq)
{
bulkQuantity = bq;
}
void sales::setDiscount(double d)
{
discount = d;
}
//Getting user entered values
string sales::getItemName( )
{
return itemName;
}
double sales::getCost( )
{
return cost;
}
int sales::getBulkQuantity( )
{
return bulkQuantity;
}
double sales::getDiscount( )
{
return discount;
}
int sales::getSalesQuantity( )
{
return salesQuantity;
}
//Calculate total amount and total discount
double sales::registerSale(int n){
if(n>bulkQuantity){
totalDiscount=(salesQuantity*cost)*(discount/100);
totalAmount=(salesQuantity*cost)-totalDiscount;
}
else{
totalAmount=(salesQuantity*cost);
totalDiscount=0;
}
return totalAmount,totalDiscount;
}
//Display all details
void sales::displaySales(){
cout<<itemName<<endl;
cout<<"Number Sold : "<<salesQuantity<<endl;
cout<<"Total Amount : $"<<totalAmount<<endl;
cout<<"Total Discount : $"<<totalDiscount<<endl;
}
//main method
int main() {
//Variable declaration for user input
sales s; //objet of sales class creation
string iName;
double c;
int bq;
double dis;
int sq;
//Asking user input
cout << "Please enter Item Name : " << endl;
cin >> iName;
s.setItemName(iName);
cout << "Please sale quantity : " << endl;
cin >> sq;
s.setSalesQuantity(sq);
cout << "Please enter cost : " << endl;
cin >> c;
s.setCost(c);
cout << "Please Enter bulk quantity : " << endl;
cin >> bq;
s.setBulkQuantity(bq);
cout << "Please Enter discount : " << endl;
cin >> dis;
s.setDiscount(dis);
//Call calculation and display methods of class sales
s.registerSale(sq);
s.displaySales();
return 0;
}
-------------------------------------------------------------------------------------------------------------------------------------
Output:-
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.