From 225aeae6d8220143cb24ffcbe7c1ca2941643670 Mon Sep 17 00:00:00 2001 From: mycroft Date: Mon, 19 Apr 1993 10:19:41 +0000 Subject: Use POSIX RAND_MAX rather than guessing. --- monop/roll.c | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) (limited to 'monop/roll.c') diff --git a/monop/roll.c b/monop/roll.c index 9de116f4..002cf788 100644 --- a/monop/roll.c +++ b/monop/roll.c @@ -39,25 +39,9 @@ static char sccsid[] = "@(#)roll.c 5.5 (Berkeley) 6/1/90"; * This routine rolls ndie nside-sided dice. */ -# define reg register +#include -# if !defined(vax) && !defined(tahoe) -# define MAXRAND 32767L - -roll(ndie, nsides) -int ndie, nsides; { - - reg long tot; - reg unsigned n, r; - - tot = 0; - n = ndie; - while (n--) - tot += rand(); - return (int) ((tot * (long) nsides) / ((long) MAXRAND + 1)) + ndie; -} - -# else +#define reg register roll(ndie, nsides) reg int ndie, nsides; { @@ -68,7 +52,6 @@ reg int ndie, nsides; { num_sides = nsides; tot = 0; while (ndie--) - tot += (r = rand()) * (num_sides / 017777777777) + 1; + tot += (r = rand()) * (num_sides / RAND_MAX) + 1; return tot; } -# endif -- cgit v1.2.3-56-ge451