Add ^ getpid() to make more random results for subsequent calling.
Add proper type casting to random calls Should go into 2.2
This commit is contained in:
parent
0232e09f50
commit
9d288406f5
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=23511
@ -53,6 +53,7 @@ static char sccsid[] = "@(#)jot.c 8.1 (Berkeley) 6/6/93";
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#define REPS_DEF 100
|
||||
#define BEGIN_DEF 1
|
||||
@ -95,9 +96,9 @@ main(argc, argv)
|
||||
getargs(argc, argv);
|
||||
if (randomize) {
|
||||
*x = (ender - begin) * (ender > begin ? 1 : -1);
|
||||
srandom((int) s);
|
||||
srandom((unsigned) s);
|
||||
for (*i = 1; *i <= reps || infinity; (*i)++) {
|
||||
*y = (double) random() / INT_MAX;
|
||||
*y = (double) random() / LONG_MAX;
|
||||
putdata(*y * *x + begin, reps - *i);
|
||||
}
|
||||
}
|
||||
@ -249,7 +250,7 @@ getargs(ac, av)
|
||||
mask = 015;
|
||||
break;
|
||||
case 012:
|
||||
s = (randomize ? time(0) : STEP_DEF);
|
||||
s = (randomize ? time(NULL) ^ getpid() : STEP_DEF);
|
||||
mask = 013;
|
||||
break;
|
||||
case 013:
|
||||
@ -261,7 +262,7 @@ getargs(ac, av)
|
||||
mask = 0;
|
||||
break;
|
||||
case 014:
|
||||
s = (randomize ? time(0) : STEP_DEF);
|
||||
s = (randomize ? time(NULL) ^ getpid() : STEP_DEF);
|
||||
mask = 015;
|
||||
break;
|
||||
case 015:
|
||||
@ -273,7 +274,7 @@ getargs(ac, av)
|
||||
break;
|
||||
case 016:
|
||||
if (randomize)
|
||||
s = time(0);
|
||||
s = time(NULL) ^ getpid();
|
||||
else if (reps == 0)
|
||||
error("Infinite sequences cannot be bounded",
|
||||
"");
|
||||
|
Loading…
Reference in New Issue
Block a user