code:
#include
using std::default_random_engine;
using std::bernoulli_distribution;
#include
using std::string;
#include
using std::cin; using std::cout; using std::endl;
int main()
{
string resp;
default_random_engine e; // e has state, so it must be outside the loop
bernoulli_distribution b; // 50/50 odds by default
do
{
bool first = b(e); // if true, the program will go first
cout << (first ? "We got first" : "You get to go first") << endl;
// play the game passing the indicator of who goes first
// cout << ((play(fist)) ? "Sorry, you lost" : "congrats, you won") << endl;
cout << "play again? Enter 'yes' or 'no'" << endl;
} while (cin >> resp && resp[0] == 'y');
}
Exercise 17.31:
we'd create a new engine and distribution, generate the same values on each iteration,
Exercise 17.32:
can't pass compile. out of variable scope.