bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement,
j'utilise la fonction rnd, mais ça me semble pas tellement fonctionnelle,
car il sort toujours des petits chiffres!
ex:
goto depart
randomize
a=int(rnd(106)*100)
if jetons(a)="" then goto depart
' sinon j'affiche le jeton corespondant, et je met le jetons(a)="" pour
ne plus le resortir.
Y a-t-il un meilleur moyen ?
merci d'avance
roger
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Salut
Tiens, ça faisait longtemps que je voulais imaginer un tirage au sort "à mémoire" :
Adapte la routine ci-dessous :
Sub TestTirage() On Error Resume Next Const NbJetons As Integer = 106 Dim OrdreSortie As Integer Dim TirageTmp As Integer Dim DejaSorti(1 To NbJetons) As Boolean
Randomize
For OrdreSortie = 1 To NbJetons Do Until DejaSorti(TirageTmp) = False TirageTmp = -Int(-Rnd * NbJetons) Loop DejaSorti(TirageTmp) = True Debug.Print TirageTmp Next OrdreSortie
End Sub
a+ -- Arnaud --------------------------------------------- infos, conseils et liens : http://www.mpfa.info ---------------------------------------------
"roger" a écrit dans le message de news: 4489a865$0$27349$
bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement, j'utilise la fonction rnd, mais ça me semble pas tellement fonctionnelle, car il sort toujours des petits chiffres!
ex:
goto depart randomize a=int(rnd(106)*100) if jetons(a)="" then goto depart ' sinon j'affiche le jeton corespondant, et je met le jetons(a)="" pour ne plus le resortir. Y a-t-il un meilleur moyen ? merci d'avance roger
Salut
Tiens, ça faisait longtemps que je voulais imaginer un tirage au sort "à mémoire" :
Adapte la routine ci-dessous :
Sub TestTirage()
On Error Resume Next
Const NbJetons As Integer = 106
Dim OrdreSortie As Integer
Dim TirageTmp As Integer
Dim DejaSorti(1 To NbJetons) As Boolean
Randomize
For OrdreSortie = 1 To NbJetons
Do Until DejaSorti(TirageTmp) = False
TirageTmp = -Int(-Rnd * NbJetons)
Loop
DejaSorti(TirageTmp) = True
Debug.Print TirageTmp
Next OrdreSortie
End Sub
a+
--
Arnaud
---------------------------------------------
infos, conseils et liens : http://www.mpfa.info
---------------------------------------------
"roger" <lemeruvien@free.fr> a écrit dans le message de news: 4489a865$0$27349$626a54ce@news.free.fr...
bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement, j'utilise la fonction rnd, mais ça me semble pas tellement
fonctionnelle, car il sort toujours des petits chiffres!
ex:
goto depart
randomize
a=int(rnd(106)*100)
if jetons(a)="" then goto depart
' sinon j'affiche le jeton corespondant, et je met le jetons(a)="" pour ne plus le resortir.
Y a-t-il un meilleur moyen ?
merci d'avance
roger
Tiens, ça faisait longtemps que je voulais imaginer un tirage au sort "à mémoire" :
Adapte la routine ci-dessous :
Sub TestTirage() On Error Resume Next Const NbJetons As Integer = 106 Dim OrdreSortie As Integer Dim TirageTmp As Integer Dim DejaSorti(1 To NbJetons) As Boolean
Randomize
For OrdreSortie = 1 To NbJetons Do Until DejaSorti(TirageTmp) = False TirageTmp = -Int(-Rnd * NbJetons) Loop DejaSorti(TirageTmp) = True Debug.Print TirageTmp Next OrdreSortie
End Sub
a+ -- Arnaud --------------------------------------------- infos, conseils et liens : http://www.mpfa.info ---------------------------------------------
"roger" a écrit dans le message de news: 4489a865$0$27349$
bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement, j'utilise la fonction rnd, mais ça me semble pas tellement fonctionnelle, car il sort toujours des petits chiffres!
ex:
goto depart randomize a=int(rnd(106)*100) if jetons(a)="" then goto depart ' sinon j'affiche le jeton corespondant, et je met le jetons(a)="" pour ne plus le resortir. Y a-t-il un meilleur moyen ? merci d'avance roger
le méruvien
Bonjour, et merci, j'ai fait un autre systeme qui marche bon week end
<Anor> a écrit dans le message de news:
Salut
Tiens, ça faisait longtemps que je voulais imaginer un tirage au sort "à mémoire" :
Adapte la routine ci-dessous :
Sub TestTirage() On Error Resume Next Const NbJetons As Integer = 106 Dim OrdreSortie As Integer Dim TirageTmp As Integer Dim DejaSorti(1 To NbJetons) As Boolean
Randomize
For OrdreSortie = 1 To NbJetons Do Until DejaSorti(TirageTmp) = False TirageTmp = -Int(-Rnd * NbJetons) Loop DejaSorti(TirageTmp) = True Debug.Print TirageTmp Next OrdreSortie
End Sub
a+ -- Arnaud --------------------------------------------- infos, conseils et liens : http://www.mpfa.info ---------------------------------------------
"roger" a écrit dans le message de news: 4489a865$0$27349$
bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement, j'utilise la fonction rnd, mais ça me semble pas tellement fonctionnelle, car il sort toujours des petits chiffres!
ex:
goto depart randomize a=int(rnd(106)*100) if jetons(a)="" then goto depart ' sinon j'affiche le jeton corespondant, et je met le jetons(a)="" pour ne plus le resortir. Y a-t-il un meilleur moyen ? merci d'avance roger
Bonjour, et merci, j'ai fait un autre systeme qui marche
bon week end
<Anor> a écrit dans le message de news:
udnPM1FjGHA.3884@TK2MSFTNGP04.phx.gbl...
Salut
Tiens, ça faisait longtemps que je voulais imaginer un tirage au sort "à
mémoire" :
Adapte la routine ci-dessous :
Sub TestTirage()
On Error Resume Next
Const NbJetons As Integer = 106
Dim OrdreSortie As Integer
Dim TirageTmp As Integer
Dim DejaSorti(1 To NbJetons) As Boolean
Randomize
For OrdreSortie = 1 To NbJetons
Do Until DejaSorti(TirageTmp) = False
TirageTmp = -Int(-Rnd * NbJetons)
Loop
DejaSorti(TirageTmp) = True
Debug.Print TirageTmp
Next OrdreSortie
End Sub
a+
--
Arnaud
---------------------------------------------
infos, conseils et liens : http://www.mpfa.info
---------------------------------------------
"roger" <lemeruvien@free.fr> a écrit dans le message de news:
4489a865$0$27349$626a54ce@news.free.fr...
bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement,
j'utilise la fonction rnd, mais ça me semble pas tellement fonctionnelle,
car il sort toujours des petits chiffres!
ex:
goto depart
randomize
a=int(rnd(106)*100)
if jetons(a)="" then goto depart
' sinon j'affiche le jeton corespondant, et je met le jetons(a)=""
pour ne plus le resortir.
Y a-t-il un meilleur moyen ?
merci d'avance
roger
Bonjour, et merci, j'ai fait un autre systeme qui marche bon week end
<Anor> a écrit dans le message de news:
Salut
Tiens, ça faisait longtemps que je voulais imaginer un tirage au sort "à mémoire" :
Adapte la routine ci-dessous :
Sub TestTirage() On Error Resume Next Const NbJetons As Integer = 106 Dim OrdreSortie As Integer Dim TirageTmp As Integer Dim DejaSorti(1 To NbJetons) As Boolean
Randomize
For OrdreSortie = 1 To NbJetons Do Until DejaSorti(TirageTmp) = False TirageTmp = -Int(-Rnd * NbJetons) Loop DejaSorti(TirageTmp) = True Debug.Print TirageTmp Next OrdreSortie
End Sub
a+ -- Arnaud --------------------------------------------- infos, conseils et liens : http://www.mpfa.info ---------------------------------------------
"roger" a écrit dans le message de news: 4489a865$0$27349$
bonjour, j'ai 106 jetons, et je veut les tirer un par un aléatoirement, j'utilise la fonction rnd, mais ça me semble pas tellement fonctionnelle, car il sort toujours des petits chiffres!
ex:
goto depart randomize a=int(rnd(106)*100) if jetons(a)="" then goto depart ' sinon j'affiche le jeton corespondant, et je met le jetons(a)="" pour ne plus le resortir. Y a-t-il un meilleur moyen ? merci d'avance roger