/*************************** EX-RAN.CPP ********************* AgF 2001-11-11 * * * * Example showing how to use random number generators from class library. * * * * Compile for console mode. * * * © 2001 Agner Fog. GNU General Public License www.gnu.org/copyleft/gpl.html * *****************************************************************************/ #include <time.h> // define time() #include "randomc.h" // define classes for random number generators #include "userintf.cpp" // define system specific user interface // include code for one of the random number generators: #include "mersenne.cpp" // members of class TRandomMersenne // or: // #include "ranrotw.cpp" // members of class TRanrotWGenerator // or: // #include "mother.cpp" // members of class TRanrotWGenerator int main() { int32 seed = time(0); // random seed // choose one of the random number generators: TRandomMersenne rg(seed); // make instance of random number generator // or: // TRanrotWGenerator rg(seed); // make instance of random number generator // or: // TRandomMotherOfAll rg(seed); // make instance of random number generator int i; // loop counter double r; // random number int32 ir; // random integer number // make random integers in interval from 0 to 99, inclusive: printf("\n\nRandom integers in interval from 0 to 99:\n"); for (i=0; i<40; i++) { ir = rg.IRandom(0,99); printf ("%6li ", ir);} // make random floating point numbers in interval from 0 to 1: printf("\n\nRandom floating point numbers in interval from 0 to 1:\n"); for (i=0; i<32; i++) { r = rg.Random(); printf ("%8.6f ", r);} // make random bits (Not for TRandomMotherOfAll): printf("\n\nRandom bits (hexadecimal):\n"); for (i=0; i<32; i++) { ir = rg.BRandom(); printf ("%08lX ", ir);} EndOfProgram(); // system-specific exit code return 0;}