#ifndef _DICE_H
#define _DICE_H

//  class for simulating a die (object "rolled" to generate
//                              a random number)
//
//  Dice(int sides) -- constructor, sides specifies number of "sides"
//               for the die, e.g., 2 is a coin, 6 is a 'regular' die
//
//  int roll() -- returns the random "roll" of the die, a uniformly
//                distributed random number between 1 and # sides
//
//  int numSides() -- access function, returns # of sides
//
//  int numRolls() -- access function, returns # of times Roll called
//                    for an instance of the class

// Written by Owen Astrachan in 1996 down in North Carolina

#include "rando.h"            // for random number generator

class Dice{
  public:
    Dice(int sides);           // constructor
    int roll();                // return the random roll
    int numSides();            // how many sides this die has
    int numRolls();            // # times this die rolled
  private:
    RandGen myGenerator;       // random number generator
    int myRollCount;           // # times die rolled
    int mySides;               // # sides on die
};

#endif    /* _DICE_H not defined */