Fonction random, les doubles?

acorna Messages postés 53 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 23 mars 2005 - 14 oct. 2004 à 11:04
cboulas Messages postés 2641 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 8 janvier 2014 - 14 oct. 2004 à 11:20
hello

J'ai une question, peut-etre stupide à poser. Est-il possible d'éviter les doubles sur des tirages par random?
je m'explique.
Si je fais temp = Int((rnd*24)+1)
est-ce qu'il existe un moyen que temp n'ai qu'une seule fois la même valeur, et pas 2 ou trois fois?
merci =)

2 réponses

cboulas Messages postés 2641 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 8 janvier 2014 16
14 oct. 2004 à 11:14
Salut,

Il suffit que tu créer un historique de ce que Temp à pris comme valeur et ensuite tu fait une boucle qui tournera jusqu'à ce que temp soit différent des nombres de ton historique.

Chris...
Web : Firstruner - eMail : [mailto:support@firstruner.com Support]
0
cboulas Messages postés 2641 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 8 janvier 2014 16
14 oct. 2004 à 11:20
Exemple :

dim StrHistorik as String
StrHistorik="Historik:"
do until instr(StrHistorik,str(Temp) & ";")=0
   Temp=Int((rnd*24)+1)
   if instr(StrHistorik,str(Temp) & ";")=0 then
      StrHistorik=StrHistorik & str(Temp) & ";"
      exit do
   end if
loop
msgbox "Valeur Actuelle de Temp : " & str(Temp)
msgbox "Valeurs déjà trouvées : " & StrHistorik


Normalement ça devrais marché

Chris...
Web : Firstruner - eMail : [mailto:support@firstruner.com Support]
0
Rejoignez-nous