SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009
-
8 juin 2009 à 14:27
SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009
-
19 juin 2009 à 00:21
Bonjour,
J'aimerais pouvoir choisir un random dans une liste sans me répéter.
Je m explique, en fait je dois programmer le jeu "Le compte est bon" , et j aimerais faire un random dans une liste. En fait je dois choisir 6 termes parmis (1-10 1-10 25 50 75 100). N'est il pas possible d'éviter de passer par un tableau et entrer directement ces valeurs en paramètre d'entrée de la fonction rand() ?
SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009 9 juin 2009 à 16:41
Hmmm pour etre plus clair imagine 24 plaques métalliques (principe de l'émission il y a quelques années) :
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 25 50 75 100 ; parmi ces 24 tu dois faire un tirage de 6 nombres.
Vous n’avez pas trouvé la réponse que vous recherchez ?
SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009 9 juin 2009 à 20:57
Haaa franchement merci beaucoup de ton investissement ca va beaucoup me servir.
Juste, si un 1 est déja présent dans le 2ième tableau "indice" la boucle if nous empechera pas d en reprendre un 2ième?
Et aussi est tu sur que la fonction "array_unshift" sorte l'élément selectionné ? Et non pas le dernier élément ?
psyckan
Messages postés135Date d'inscriptionvendredi 27 août 2004StatutMembreDernière intervention 8 mai 2010 9 juin 2009 à 21:45
1) Non les deux 1 peuvent sortir car ils se trouve dans un cellule différente
example :
1 - $n=10 (le tableau 'indice étant vide') on affiche donc la valeur qui correspond à la cellule 10 du tableau $tab
Soit 1
On place 10 dans le tableau 'indice'
2- $n=10 (10 se trouve dans le tableau 'indice') -> on passe au suivant
3 - $n=0 (0 ne se trouve pas dans le tableau 'indice')on affiche donc la valeur qui correspond à la cellule 0 du tableau $tab
Soit 1
[...]
Les deux 1 sont sortis
2) la fonction array_unshift sert juste a mettre des élément dans un tableau ici, on aurrait tout aussi bien pu utiliser array_push
SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009 10 juin 2009 à 06:34
Effectivement j avais pas remarqué que ca se jouais sur les indices! D ou le nom... Lol.
Je te remercie vraiment énormément tu ma sorti d un dilemme ! J ai trouvé différentes solutions, avec des tableaux et des pointeurs, mais celle ci est vraiment beaucoup plus simple et facile a comprendre.
SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009 18 juin 2009 à 21:46
Héhé toujours à l'affut ! Merci serieux ta première petite fonction ma bien servi. Mais en fait je t expliques, j'ai donc 6 liste déroulante pour mon jeu (le compte est bon) et j'aimerais qu'en cliquant sur un bouton aléatoire, les 6 listes prennent des valeurs aléatoires choisies.
Ex : ma 1ere liste :
J ai compris en surfant un peu que c est la valeur du select qu il faut réussir a changer. Mais je ne sais pas comment la faire changer en cliquant sur un bouton Input. De plus je dois éviter les répétitions et utiliser donc le petit générateur que tu ma coder. J espere etre assez clair
SalihLeChat
Messages postés16Date d'inscriptionvendredi 1 décembre 2006StatutMembreDernière intervention19 juin 2009 19 juin 2009 à 00:21
Haaa j ai répondu mais pas ca c est pas afficher Oo?
Bon c est pas grave, je te disais donc un grand merci d abord t imagines pas de quelle galère tu me sors!
Simple problème en cliquant sur Play! Ca me sort un message d erreur, et j aimerais qu en cliquant sur ce bouton ca génere un nouveau tirage aléatoire ! De plus la liste 1-10 est en double dans la liste mais bon ca c est vraiment pas important. Par contre j ai plus qu'une liste liste1 ? Pour récupérer les 6 données différemment ca rique de poser probleme ? enfin bref...
De toute facon merci je pense avoir compris l idée générale je vais essayé de bidouiller. Serieux merci !!!