Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
Sujet: J'ai la mémoire qui flanche... Mar 19 Fév 2013 - 17:40
Voilà mon problème :
J'ai besoin de choisir 8 éléments différents (au "hasard") dans un ensemble de 13 éléments différents.
Je l'ai déjà fait dans un passé pas très lointain mais impossible de me souvenir de cette formule.
Quelqu' un pourrait il éclairer ma lanterne ?
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
Sujet: Re: J'ai la mémoire qui flanche... Mar 19 Fév 2013 - 19:09
Bonsoir Ygeronimi, Moi je fais comme cela:
Code:
dim z,r,t,v(8),j label tirage t=1 repeat tirage: z=0:r=int(rnd(13))+1 for j=1 to t-1 if r=v(j) then z=1 next j if z=1 then goto tirage v(t)=r:t=t+1 until t>8
for j=1 to 8:print v(j):next j
Maintenant, il y a certainement plus simple. A+
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
Sujet: re Mar 19 Fév 2013 - 19:17
Merci Bignono !
C'est toujours plus simple que les calculs dans lesquels je m'étais embarqué...
un truc , tu es sûr du rnd(13)+1 cela ne fait il pas un tirage entre 1 et 14 inclus ?
je pensais plutôt rnd(12)+1 pour avoir un tirage entre 1 et 13 et donc éviter le 0 .
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
Sujet: Re: J'ai la mémoire qui flanche... Mar 19 Fév 2013 - 19:32
rnd(13) signifie un tirage aléatoire entre 0 et 13, ce qui veut dire que tu n'auras jamais 13, mais 12.99999 est possible. int(rnd(13)) me donnera les chiffres 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, et 12. En mettant int(rnd(13))+1 on exclus le 0 et on peut avoir 13.
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
Sujet: re Mar 19 Fév 2013 - 19:37
Ok merci !
tu vois, j'ai bien la mémoire qui flanche, même ça je l'avais oublié...