
/************************************
  CREATION LOG ENTRY
  CREATED BY: Chris McGinlay
  CREATED ON: 17/07/01 22:27:41
  Comments: driver to test probability distribution classes
 ************************************/
#include "prob_dist.h"
#include <iostream>
#include <map>
#include <algorithm>

namespace PD= Probability_Distribution;

void main (void)
{

    try
    {
        //Uniform stupid(5,3);  //generate error
        PD::Uniform D6(1,6,0);    //simulate fair die
        D6.test();
        PD::Uniform coin(1,2);  //simulate fair coin
        coin.test(10);          //test with 10 'flips'
        coin.test();            //test with default number of flips
        PD::Binomial five_coins(5,0.5); //simulate flipping 5 coins
        five_coins.test();      //default test
        PD::Poisson mypoiss(3,200);     //poisson, mean=3, seed=200
        mypoiss.test();

        std::cout << D6.draw() << std::endl;    //roll the die once
    }

    catch (PD::Bad_Distribution)
    {
            std::cout << "Error in distribution!" << std::endl;
    }
    catch (std::out_of_range)
    {
        std::cout << "Range Error" << std::endl;
    }

    catch (...)
    {
        std::cout << "Weird" << std::endl;
    }

    std::cout << std::endl; //flush

    return;
}


    