Question

In: Computer Science

This class has two constructors. The default constructor (the one that takes no arguments) should initialize the first and last names to "None", the seller ID to "ZZZ999", and the sales total to 0.


For this assignment, implement and use the methods for a class called Seller that represents information about a salesperson.

The Seller class

Use the following class definition:

class Seller
{
public:
  Seller();
  Seller( const char [], const char[], const char [], double );
    
  void print();

  void setFirstName( const char [] );
  void setLastName( const char [] );
  void setID( const char [] );
  void setSalesTotal( double );

  double getSalesTotal();

private:
  char firstName[20];
  char lastName[30];
  char ID[7];
  double salesTotal;
};

Data Members

The data members for the class are:

  • firstName holds the Seller's first name

  • lastName holds the Seller's last name

  • ID holds the Seller's id number

  • salesTotal holds the Seller's sales total

Constructors

This class has two constructors. The default constructor (the one that takes no arguments) should initialize the first and last names to "None", the seller ID to "ZZZ999", and the sales total to 0.

The other constructor for the class should initialize the data members using the passed in arguments. It takes 4 arguments: a character array with a Seller's first name, a character array with a Seller's last name, a character array with a Seller's id number, and a double that holds the Seller's sales total. The data members should be initialized by calling the various set methods.

Methods

void print()

This method displays the Seller information. It takes no arguments and returns nothing.

The information should be displayed as follows:

Giant, Andre               BIG357               678.53

void setFirstName( const char [] )

This method changes a Seller's first name. It takes one argument: an array of characters that represents the Seller's first name. It returns nothing.

If the length of the passed in argument is greater than 0, it should be used to initialize the firstName data member. Otherwise, the firstName data member should be set to "None".

void setLastName( const char [] )

This method changes a Seller's last name. It takes one argument: an array of characters that represents the Seller's last name. It returns nothing.

If the length of the passed in argument is greater than 0, it should be used to initialize the lastName data member. Otherwise, the lastName data member should be set to "None".

void setID( const char [] )

This method changes a Seller's id number. It takes one argument: an array of characters that represents the Seller's id number. It returns nothing.

If the length of the passed in argument is greater than 0 and less than 7, it should be used to initialize the ID data member. Otherwise, the ID data member should be set to "ZZZ999".

void setSalesTotal( double )

This method changes a Seller's sales total. It takes one argument: a double that represents the Seller's sales total. It returns nothing.

If the passed in argument is greater than or equal to 0, it should be used to initialize the salesTotal data member. Otherwise, the salesTotal data member should be set to 0.

double getSalesTotal()

This method returns a Seller's sales total data member. It takes no arguments.

main()

In main(), create 5 Seller objects. They should contain the values:

  • The first Seller should have your name, an id of "CSI240", and a sales total of 1234.56. Note: if you're pair programming, set the first name to the first name of both you and your partner: "Jane/John" and the last name to the last name of both you and your partner: "Doe/Doe".

  • The second Seller should be created using the default constructor (the one that doesn't take any arguments)

  • The third Seller should have the first name of an empty string (""), a last name of "Robinson", an id of "TOOBIG999", and a sales total of -876.34.

  • The fourth Seller should have the name "Tarik Cohen", an id of "RUN29", and a sales total of 13579.11

  • The fifth Seller should have the name "Kyle Long", an id of "TACK75", and a sales total of 24680.24

The rest of main() will include using the various methods on each of the 5 Seller objects. Display a label similar to "The first Seller" before anything is outputted for each of the objects.

For the first Seller, display the Seller information.

For the second Seller, display the Seller information, set the Seller name to "Mitchell Trubisky", set the id number to "QB10", set the sales total to 246.80, and then display the Seller information once again.

For the third Seller, display the Seller's information, set the Seller's first name to "Allen", set the id number to "WIDE12", set the sales total to 9900000.99, and then display the Seller information once again.

For the fourth Seller, display only the Seller's sales total.

For the fifth Seller, display the Seller's information, set the first name to an empty string (""), set the last name to an empty string, set the id number to an empty string, set the sales total to -52.96, and then display the Seller information once again.

Programming Notes

  1. Each method must have a documentation box like a function.

  2. Hand in a copy of the source code using Blackboard.

Output

Note: The information for the first Seller object will have your name.

The First Seller
Da Bear, Staley                 CSI240        1234.56

The Second Seller
None, None                      ZZZ999           0.00
Trubisky, Mitchell                QB10         246.80

The Third Seller
Robinson, None                  ZZZ999           0.00
Robinson, Allen                 WIDE12     9900000.99

The Fourth Seller
The sales total is $13579.11

The Fifth Seller
Long, Kyle                      TACK75       24680.24
None, None                      ZZZ999           0.00

Solutions

Expert Solution

Screenshot

Program

seller.h

/*
Create a class Seller header file
With name,id and balance as attribute
2constructors, setter and getter used
*/
#include
#include
#include
class Seller
{
   //Member functions
public:
   //Constructors
   Seller();
   Seller(const char[], const char[], const char[], double);

   //Display function
   void print();

   //Setters
   void setFirstName(const char[]);
   void setLastName(const char[]);
   void setID(const char[]);
   void setSalesTotal(double);

   //Getter
   double getSalesTotal();

//Member variables
private:
   char firstName[20];
   char lastName[30];
   char ID[7];
   double salesTotal;
};

seller.cpp

#include "seller.h"
/*
Function: default constructor
ParamIn: None
ParamOut: None
Description: Set name as None,Id as ZZZ999 and balance as 0
*/
Seller::Seller() {
   strcpy(firstName ,"None");
   strcpy(lastName, "None");
   strcpy(ID, "ZZZ999");
   salesTotal = 0;
}
/*
Function: Parameterized constructor
ParamIn: fName,lName,id and total
ParamOut: None
Description: Set name,id and balance as passed arguments
*/
Seller::Seller(const char fName[], const char lName[], const char id[], double total) {
   setFirstName(fName);
   setLastName(lName);
   setID(id);
   setSalesTotal(total);
}
/*
Function: print
ParamIn: None
ParamOut: None
Description: Display formatted seller details
*/
void Seller::print() {
   std::cout << std::fixed << std::setprecision(2);
   std::cout < }
/*
Function: setFirstName
ParamIn: fName
ParamOut: None
Description: Check name length, if greater than 0 change firstname,otherwise None
*/
void Seller::setFirstName(const char fName[]) {
   if (strlen(fName) > 0) {
       strcpy(firstName,fName);
   }
   else {
       strcpy(firstName, "None");
   }
}
/*
Function: setLastName
ParamIn: lName
ParamOut: None
Description: Check name length, if greater than 0 change last name,otherwise None
*/
void Seller::setLastName(const char lName[]) {
   if (strlen(lName) > 0 ) {
       strcpy(lastName, lName);
   }
   else {
       strcpy(lastName,"None");
   }
}
/*
Function: setID
ParamIn: id
ParamOut: None
Description: Check id length, if greater than 0 and less than 7,then change ID with id,otherwise ZZZ999
*/
void Seller::setID(const char id[]) {
   if (strlen(id) > 0 && strlen(id) < 7) {
       strcpy(ID, id);
   }
   else {
       strcpy(ID,"ZZZ999");
   }
}
/*
Function: setSalesTotal
ParamIn: total
ParamOut: None
Description: Check total>0 , then set salesTotal with total,otherwise 0
*/
void Seller::setSalesTotal(double total) {
   if (total < 0) {
       salesTotal = 0;
   }
   else {
       salesTotal = total;
   }
}
/*
Function: getSalesTotal
ParamIn: None
ParamOut: salesTotal
Description: Return salesTotal of seller
*/
double Seller::getSalesTotal() {
   return salesTotal;
}

main.cpp

//Test class
#include "seller.h"

int main()
{
    //Create 5 seller objects
   Seller seller1("Jane", "John", "CSI240", 1234.56);
   Seller seller2;
   Seller seller3("", "Robinson", "TOOBIG999", -876.34);
   Seller seller4("Tarik", "Cohen", "RUN29", 13579.11);
   Seller seller5("Kyle", "Long", "TACK75", 24680.24);
   //Display first seller
   std::cout << "First Seller\n";
   seller1.print();
   //Display second seller
   std::cout << "\nSecond Seller\n";
   seller2.print();
   //set properties of second seller
   seller2.setFirstName("Mitchell");
   seller2.setLastName("Trubisky");
   seller2.setID("QB10");
   seller2.setSalesTotal(246.80);
   //Display
   seller2.print();
   //Display third seller
   std::cout << "\nThird Seller\n";
   seller3.print();
   //set properties of second seller
   seller3.setFirstName("Allen");
   seller3.setID("WIDE12");
   seller3.setSalesTotal(9900000.99);
   //Display
   seller3.print();
   //Display fourth seller
   std::cout << "\nFourth Seller\n";
   std::cout << "The sales total is $" << seller4.getSalesTotal() << std::endl;
   //Display fifth seller
   std::cout << "\nFifth Seller\n";
   seller5.print();
   //set properties of second seller
   seller5.setFirstName("");
   seller5.setLastName("");
   seller5.setID("");
   seller5.setSalesTotal(-52.96);
   seller5.print();
}

----------------------------------------

Output

First Seller
John, Jane         CSI240        1234.56

Second Seller
None, None         ZZZ999           0.00
Trubisky, Mitchell           QB10         246.80

Third Seller
Robinson, None         ZZZ999           0.00
Robinson, Allen         WIDE12     9900000.99

Fourth Seller
The sales total is $13579.11

Fifth Seller
Long, Kyle         TACK75       24680.24
None, None         ZZZ999           0.00


Related Solutions

Define the exception class called TornadoException. The class should have two constructors including one default constructor....
Define the exception class called TornadoException. The class should have two constructors including one default constructor. If the exception is thrown with the default constructor, the method getMessage should return "Tornado: Take cover immediately!" The other constructor has a single parameter, m, of int type. If the exception is thrown with this constructor, the getMessage should return "Tornado: m miles away; and approaching!" Write a Java program to test the class TornadoException.
Write a class named UpperCaseFile. The class's constructor should accept two file names as arguments. The...
Write a class named UpperCaseFile. The class's constructor should accept two file names as arguments. The first ofile should be opened for reading and the second file should be opened for writing. The class should read the contents of the first file, change all characters to uppercase, and store the results in the second file. The second file will be a copy of the first file, excpet all the characters will be uppercase. Use notepad or another text editor to...
Create a class called College that has: At least 2 constructors (one should be the default...
Create a class called College that has: At least 2 constructors (one should be the default constructor) All members private The relevant setters and getters A print_me() function A college_ID member (unique) Write two unsorted lists that manage the data for colleges and their ranking: An unsorted list using an array An unsorted list using a linked list Each college will have a unique ID number that will be used for search. For the lab you don't need to read...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT