/* Copyright (C) 1994 by Thomas Glen Smith. All Rights Reserved. */
/* rollp APL2 V1.0.0 ***************************************************
* Returns a random selection from the whole numbers beginning with *
* indxorg and ending with indxorg+n-1. This version works with *
* the zortech C++ compiler. *
***********************************************************************/
#define INCLUDES 0
#include "includes.h"
void rollp(narg,ret)
double *narg,*ret;
{
extern int aplerr;
extern int indxorg;
double n,r;
#if APL_DOS
double divisor=32767.0;
#else
double divisor=RAND_MAX;
#endif
n = *narg;
if (n == 0.0)
*ret = 0.0;
else if (n < 0.0) {
aplerr = 37;
*ret = 0.0;
}
else {
r = indxorg;
*ret = r + ((double) rand())/divisor * (double) n;
}
}