#include <iostream>
#include <ctime>


enum Status {CONTINUE, WON, LOST };
int rollDice();
Status checkStatus(int roll);



int main()
{
    //create player 
    std::srand(time(0));
    int points = rollDice();  // first roll of the dice

    Status gameStatus = checkStatus(points);
    int sum;

    while (gameStatus == CONTINUE) {
       sum = rollDice(); // subsequent roll

       if(sum == points) gameStatus = WON; // win by making point
       else if(sum == 7) gameStatus = LOST; // lose by rolling 7
    }


    if(gameStatus == WON) std::cout << "Player wins" << std::endl;
    else std::cout << "Player looses" << std::endl;

    return 0;
}



int rollDice() 
{
   int die1 = 1 + rand() %6;
   int die2 = 1 + rand() %6; 

   int sum = die1 + die2;

   std::cout << "Player rolled " << die1 << " + " << die2 
             << " = " << sum << std::endl;
   return sum;
}



Status checkStatus(int roll)
{
   if( roll == 2 || roll == 3 || roll == 12) return LOST;
   else if(roll == 7 || roll == 11 ) return WON;
   else return CONTINUE;
}
