From: ab@captblood.armstrong.edu ()
Subject: Random numbers in Gnat
Date: 1 Mar 1995 21:51:57 GMT
Date: 1995-03-01T21:51:57+00:00 [thread overview]
Message-ID: <3j2q9t$s3n@solar.Armstrong.EDU> (raw)
I cannot find any discussion of the use of random() procedure
in gnat-2.03 Unix version for SunOS 4.1.3. The only information
that I found is in file a-numran.ads, and as the following
shows I must have misunderstood the intent and use of the objects
in that file.
Here is a little test that I've concocted:
with text_io; use text_io;
with ada.numerics.random; use ada.numerics.random;
procedure randtest is
package int_io is new integer_io(integer); use int_io;
rand_state: state:= make_state;
-- return random number in 0..up_bound
function my_random(up_bound: integer) return integer is
r: Uniformly_Distributed;
begin
random( rand_state, r);
return integer(r*float(up_bound));
end my_random;
begin
for i in 1..10 loop
put(my_random(1000)); new_line;
end loop;
end randtest;
The program prints out only zeros rather than 10 random numbers in the
0..1000 range. I dislike the use of the global rand_state variable.
However using it as a parameter is no better either. Indeed, why
should one be bothered with this quantity anyway? (In C one
just seeds the generator, and then calls the random() as a
parameterless function, why not here?)
I'll appreciate your discussion as to how the random number
generator should be used. Pointers to some documentation/discussion
of the objects in a-numran.ads would also be helpful.
ab
--
Dr. A.Bykat
Fuller E. Callaway Professor
next reply other threads:[~1995-03-01 21:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
1995-03-01 21:51 ab [this message]
1995-03-02 8:31 ` Random numbers in Gnat Dave Marshall
1995-03-03 19:11 ` Robert Dewar
1995-03-02 15:50 ` Robert I. Eachus
1995-03-03 15:08 ` Tucker Taft
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox