/* -*-c-*-
*
- * $Id: lcrand.c,v 1.3 2000/06/17 11:29:03 mdw Exp $
+ * $Id: lcrand.c,v 1.4 2000/12/06 20:31:06 mdw Exp $
*
* Simple linear congruential generator
*
/*----- Revision history --------------------------------------------------*
*
* $Log: lcrand.c,v $
+ * Revision 1.4 2000/12/06 20:31:06 mdw
+ * Simplify uniform range transformation.
+ *
* Revision 1.3 2000/06/17 11:29:03 mdw
* Add the flags word to the generic generator.
*
uint32 r = P - P % m;
do xx = lcrand(xx); while (xx >= r);
*x = xx;
- return (xx / (r / m));
+ return (xx % m);
}
/*----- Generic interface -------------------------------------------------*/