Générer un nombre aléatoire en Fortran ?

Published: 29 mai 2014

DMCA.com Protection Status

Pour générer un nombre aléatoire dans un intervalle donné en Fortran on utilise la fonction intrinsèque RAND. Cette fonction retourne un nombre aléatoire dans l'intervalle $[0,1]$ et peut ensuite être utilisée pour générer un nombre aléatoire dans un intervalle quelconque $[x,y]$ (voir) en utilisant la formule suivante: $rand(0)*(y-x) + x$. Exemple de code Fortran pour Générer un nombre aléatoire (Compilation: fortran FortranRandomNumber.f90 -o FortranRandomNumber)

program FortranRandomNumber

implicit none

integer :: i,j
integer :: nb_data, n

real :: p

p = 0.0 
n = 0
nb_data = 50

do i = 1, nb_data

  ! Generer un nombre reel aleatoire entre 0 et 100
  !write(6,*) rand(0)*100

  ! Generer un nombre entier aleatoire entre 0 et 100
  write(6,*) int(rand(0)*100)

  ! Generer un nombre entier aleatoire entre 5 et 100
  !write(6,*) int(rand(0)*(100-5)) + 5

end do

end program FortranRandomNumber

donne par exemple

       0
      13
      75
      45
      53
      21
       4
      67
      67
      93
      38
      51
      83
      .
      .
      .

Recherches associées