Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

In the project, I used only operations of insertion and extration(in the main).

ID: 3697741 • Letter: I

Question

In the project, I used only operations of insertion and extration(in the main). How can I implement other operations in this project? Please show me the code.

Lottery.h

*************************************************************

#include <iostream>
#include <cstdlib>
#include <ctime>


#define SIZE 5
#define MAX_RANGE 10

using namespace std;

class Lottery
{
private:
   int lottery[SIZE];
public:
   Lottery();
   ~Lottery();
   virtual void intro();
   virtual void generateNumbers();
   virtual int findMatches(Lottery &);
   friend ostream &operator<<(ostream &, Lottery &);
   friend istream &operator>>(istream &, Lottery &);
   bool operator==(Lottery &);
   bool operator!=(Lottery &);
   Lottery &operator=(Lottery &);
   Lottery &operator+(Lottery &);
};

Lottery.cpp

************************************************************************

#include <iostream>
#include <cstdlib>
#include <ctime>
#include "Lottery.h"
using namespace std;

Lottery::Lottery(){}
Lottery::~Lottery(){}

void Lottery::intro()
{
cout << "Welcome to the grand prize lottery game!" << endl;
cout << "Win $5 if you have 1 match number!" <<endl;
cout << "Win $20 if you have 2 match numbers!" <<endl;
cout << "Win $100 if you have 3 match numbers!" <<endl;
cout << "Win a trip to the Paris if you have 4 match numbers!" <<endl;
cout << "Win a brand new BMW if you have all 5 match numbers!" <<endl;
cout << "Now Please enter five numbers 0 through 9 for lottery numbers" << endl;
cout << endl;
}

void Lottery::generateNumbers()
{
   srand((unsigned)time(NULL));
   for (int i = 0; i < SIZE; i++)
       {
           lottery[i] = 0 + rand() % MAX_RANGE;
           cout << "lottery[" << i+1 << "] = " << lottery[i] << " " << endl;
   }
   cout << "For dubugging purpose only" << endl;
   cout << endl << endl;
}

int Lottery::findMatches(Lottery &obj)
{
   int matches = 0;
   for (int i = 0; i < SIZE; ++i)
   {
       if (lottery[i] == obj.lottery[i])
           matches = matches + 1;
   }
   return matches;
}

ostream &operator<<(ostream &os, Lottery &obj)
{
   for (int i = 0; i < SIZE; ++i)
       os << obj.lottery[i] << " ";
   os << endl;
   return os;
}

istream &operator>>(istream &is, Lottery &obj)
{
   for (int i = 0; i < SIZE; ++i)
   {
       float temp;
       cout << "Please enter number # " << (i + 1) << " : ";
       is >> temp;
       while (is.fail() || (int)temp != temp || temp < 0 || temp > 9 || getchar() != ' ')
       {
           cout << "Invalid input. Enter five numbers 0 through 9 for lottery numbers: ";
           is.clear();
           is.ignore(std::numeric_limits<std::streamsize>::max(), ' ');
           is >> temp;
           cout << " " << endl;
       }
       obj.lottery[i] = (int)temp;
   }
   return is;
}

bool Lottery::operator==(Lottery &obj)
{
   for (int i = 0; i < SIZE; i++){
       if (lottery[i] != obj.lottery[i])
           return false;
   }
   return true;
}

bool Lottery::operator!=(Lottery &obj)
{
   return (*this) == obj;
}

Lottery &Lottery::operator=(Lottery &obj)
{
   for (int i = 0; i < SIZE; i++)
       lottery[i] = obj.lottery[i];
   return *this;
}

Lottery &Lottery::operator+(Lottery &obj)
{
   Lottery temporal = *this;
   for (int i = 0; i < 5; i++){
       lottery[i] += obj.lottery[i];
       if (lottery[i] > 9){
           lottery[i] -= 10;
           if (i != 4)
               lottery[i + 1]++;
           else
               return temporal;
       }
   }
   return *this;
}

Main.cpp

**************************************************************************

#include <iostream>
#include <cstdlib>
#include <ctime>
#include "Lottery.h"

using namespace std;

int main()
{
//create an object
   Lottery player, automate;
   automate.generateNumbers();
  
   int numMatches; // Number of matches
player.intro();

   cin >> player;
   cout << "Player lottery: " << player << " Lottery Number: " << automate << endl;

   numMatches = player.findMatches(automate);
   cout << endl;

   cout << "You matched " << numMatches << " numbers. ";

   if (numMatches == 1)
       cout << "Congratulations! You just won $5! "<< endl ;
   else if (numMatches == 2)
       cout << "Congratulations! You just won $20! "<< endl ;
   else if (numMatches == 3)
       cout << "Congratulations! You just won $100! "<< endl ;
   else if (numMatches == 4)
       cout << "Congratulations! You just won a trip to the Paris! "<< endl ;
   else if (numMatches == 5)
       cout << "Congratulations! You're the grand prize winner!! "
               <<"You just won a new BMW"<< endl ;
   else
       cout << "Thanks for your participation. "
               "Try again next time. Good Luck!" << endl;

   system("pause");
   return 0;
}

Explanation / Answer

#include 02 #include 03 #include 04 #include 05 using namespace std; 06 07 08 int main () 09 {   10     const int SIZE = 5;         //Size of the arrays. 11           int user[SIZE];       //To hold the user's lucky numbers. 12           int lottery[SIZE];        //To hold the random numbers. 13           int count = 0;        //Loop counter. 14           bool numMatch = true;          //Flag variable. 15               16             17 18         cout
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote