Fortran et rand

Discutez d'informatique ici !
melreg
Membre Relatif
Messages: 325
Enregistré le: 10 Déc 2007, 20:09

fortran et rand

par melreg » 05 Mar 2009, 12:15

Bonjour,

J'aimerais avoir à disposition 5 nombres pseudo-aléatoires entre 1 et 100 (programmation en fortran90).
Pour ne pas avoir 5 fois le même nombre, j'utilise:

call system_clock(count,count_rate,count_max)
rdm=rand(count)

(l'instruction est à l'intérieur d'une boucle do)
Mais en fait, le temps d'exécution est trop court, et les nombres générés (i.e. qqch du genre nint(99.*rdm)+1) sont les mêmes.

Comment faire dans mon cas? Existe-t-il une commande pour faire attendre le processeur?

Merci d'avance



Dominique Lefebvre
Membre Légendaire
Messages: 8005
Enregistré le: 03 Déc 2005, 12:00

par Dominique Lefebvre » 07 Mar 2009, 21:29

melreg a écrit:Bonjour,

J'aimerais avoir à disposition 5 nombres pseudo-aléatoires entre 1 et 100 (programmation en fortran90).
Pour ne pas avoir 5 fois le même nombre, j'utilise:

call system_clock(count,count_rate,count_max)
rdm=rand(count)

(l'instruction est à l'intérieur d'une boucle do)
Mais en fait, le temps d'exécution est trop court, et les nombres générés (i.e. qqch du genre nint(99.*rdm)+1) sont les mêmes.

Comment faire dans mon cas? Existe-t-il une commande pour faire attendre le processeur?

Merci d'avance

Bonsoir,
Tu devrais jeter un coup d'oeil ici : [url="http://orion.math.iastate.edu/burkardt/f_src/f90/random_prb.f90"]http://orion.math.iastate.edu/burkardt/f_src/f90/random_prb.f90[/url]
surtout sur les dernières routines...

melreg
Membre Relatif
Messages: 325
Enregistré le: 10 Déc 2007, 20:09

par melreg » 08 Mar 2009, 11:48

Merci pour le lien!

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 16 Avr 2009, 17:49

Bonjour,

La fonction SystemClock sert à initialise la fonction rand. Il suffit (à mon avis) de la mettre en dehors de la boucle et de toute façon qu'elle ne soit appelée qu'une seule fois.

Cordialement

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite