/* * craps.cpp * * Created on: Sep 25, 2010 * Author: Michael J. Fischer * for use in Yale course CPSC 427a, Fall 2010 */ #include "craps.hpp" // Implements the rules of craps void Craps::playRound() { // First roll dice->roll(); numRolls++; switch (dice->getSum()) { case 7: case 11: numWins++; // round over; player wins return; case 2: case 3: case 12: return; // round over; player loses } int point = dice->getSum(); // Subsequent rolls int sum; do { dice->roll(); numRolls++; sum = dice->getSum(); } while (sum != 7 && sum != point); // Round over if (sum == point) numWins++; // player wins return; } ostream& Craps::print(ostream& out) const { out << "[Craps: numRolls=" << numRolls << ", numWins=" << numWins << " " << *dice << " EndCraps]"; return out; }