/** * Removes and returns a random domino from the stack */ Domino DominoCollection::drawDomino( void ) { RandomNumberGenerator r; int index = r.nextNumber( (int) dominoes.size() - 1); Domino d( dominoes[index] ); dominoes.erase( dominoes.begin() + index ); return d; }
/** * Just test it here, I'm lazy */ void RandomNumberGeneratorTests::test( int iter ) { beginTest(); RandomNumberGenerator r; int i = 0; int cnt[7] = { 0,0,0,0,0,0,0 }; std::cout << iter << " Random Number Generation 0-6:" << std::endl; while(++i != iter) { cnt[r.nextNumber(6)]++; } for( i = 0; i < 7; ++i ) { std::cout << i << ": " << cnt[i] << " (" << ((float) cnt[i] / (float) iter) * 100 << "%)" << std::endl; } endTest(); }