Mélanger un tableau de valeur

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
olivier
Messages : 305
Inscription : mer. 05/janv./2005 12:58
Localisation : http://www.tib-net.com/meca/index.htm

Mélanger un tableau de valeur

Message par olivier »

La flemme est parmis moi ....

Je suis sur que quelqu'un a déjà fait une procedure pour mélanger un tableau de valeur de façon aléatoire : genre pour faire une playlist random.

Tableau du genre : Dim nom.s(100)

Hein oui y'en a un qui l'a fait :roll: dis tu peux me l'a donner :roll:

Merci d'avance et bonne prog à tous.
Vive le temps libre !
scaraber
Messages : 362
Inscription : ven. 15/juil./2005 17:32

Message par scaraber »

ben je pence que au mommentde charger le tableau tu met des random
a=random(100)
charge tableau ligne (a)
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

prend une liste chainée et tu fais des swap ;)
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

là c'est dans un tableau... pas une liste... mais bon fais des swap aussi lol... utilise random comme on te l'a suggéré...

Code : Tout sélectionner

n = 100
dim tab(n)
precision = 10000

randomize( elapsedmilliseconds() )

pour i de 1 à precision
  i1 = random(n)
  i2 = random(n)
  swap = tab(i1)
  tab(i1) = tab(i2)
  tab(i2) = swap
suivant
Dri ;)
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

voila un code en PB...

Code : Tout sélectionner

n = 20
Dim tab(n)

For i = 0 To n
  tab(i) = i
Next i

;là on a un tableau d'entiers trié dans l'ordre croissant
;petite boucle pour le vérifier
For i = 0 To n
  Debug tab(i)
Next i

precision = 10000

RandomSeed( ElapsedMilliseconds() )

For i = 1 To precision
  i1 = Random(n)
  i2 = Random(n)
  swap = tab(i1)
  tab(i1) = tab(i2)
  tab(i2) = swap
Next i

Debug "---"

;là on a un tableau d'entiers mélangé
;petite boucle pour le vérifier
For i = 0 To n
  Debug tab(i)
Next i
Dri
olivier
Messages : 305
Inscription : mer. 05/janv./2005 12:58
Localisation : http://www.tib-net.com/meca/index.htm

Message par olivier »

Ma c'est SUPER !
Merci à vous :lol:
Vive le temps libre !
Répondre