Next: RANGE, Previous: RANDOM_SEED, Up: Intrinsic Procedures
RAND
— Real pseudo-random numberRAND(FLAG)
returns a pseudo-random number from a uniform
distribution between 0 and 1. If FLAG is 0, the next number
in the current sequence is returned; if FLAG is 1, the generator
is restarted by CALL SRAND(0)
; if FLAG has any other value,
it is used as a new seed with SRAND
.
This intrinsic routine is provided for backwards compatibility with
GNU Fortran 77. It implements a simple modulo generator as provided
by g77. For new code, one should consider the use of
RANDOM_NUMBER as it implements a superior algorithm.
RESULT = RAND(FLAG)
FLAG | Shall be a scalar INTEGER of kind 4.
|
REAL
type and the default kind.
program test_rand integer,parameter :: seed = 86456 call srand(seed) print *, rand(), rand(), rand(), rand() print *, rand(seed), rand(), rand(), rand() end program test_rand