Vous n'êtes pas identifié(e).
bonjour,
J'aimerai créé un jeux de hasard ou l'on gagne par exemple, 10 points(1 chance sur 2), 50 points (1 chance sur 10), 500 points (1 chance sur 50)...
Mais je ne sais pas du tout comment m'y prendre.
Il faut que je créé une table gains, par exemple :
idgains | probabilité | gains
Mais ensuite je ne sais pas du tout comment procédé pour faire un random en tenant compte du poids de chaque gains.
Est ce que vous auriez une idée?
Merci beaucoup
Hors ligne
Personne n'a d'idé?
Sinon oublions la requète SQL et imaginons que j'ai récupéré les ligne dans un tableau.
Il y a un moyen de choisir une ligne du tableau en fonction des probabilités?
Merci
Hors ligne
Saluton,
Il faut dire que la formulation de ta problématique est tout sauf d'une grande clarté.
Qu'entends-tu exactement par un chance sur n ?
et où doit s'arrêter la série, c'est à dire par quoi faut-il remplacer les ... ?
Jette un œil sur ce petit script
Le hasard appliqué à un liste de composition proportionnelle au gain escomptable, ne constitue-t-il pas ce que tu appelles
un moyen de choisir une ligne du tableau en fonction des probabilités ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
En fait si c'est tout à fait ca.
Choisir une ligne du tableau en fonction des probabilités de chaque enregistrement.
Je parle de poids, mais c'est la même chose.
je vais regardé ton script.
Hors ligne
En fait ça à l'air de le faire assez bien
Retourne ce genre de test
[10] => 501
[20] => 252
[40] => 125
[80] => 60
[160] => 32
[320] => 20
[640] => 7
[1280] => 2
[5120] => 1
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Si j'ai bien compris ton code, tu enregistre plusieurs fois dans un tableau chaque "jeux" pour lui donné des probabilités différentes.
Hors ligne
Non,
Je crée un tableau (array()) $tirage qui contient :
- 500 occurrences qui valent 10
- 250 occurrences qui valent 20
- 125 occurrences qui valent 40
- 63 occurrences qui valent 80
- 31 occurrences qui valent 160
- 16 occurrences qui valent 320
- 8 occurrences qui valent 640
- 4 occurrences qui valent 1280
- 2 occurrences qui valent 2560
- 1 occurrence qui vaux 5120
ensuite je mélange [shuffle()] le tableau 1000 fois et à chaque fois j'incrémente l'index d'un autre tableau qui correspond à la valeur de la première position du tableau mélangé.
Ensuite je classe ce tableau de résultat en ordre croissant des index [ksort()].
On observe que la fréquence de sortie des valeurs correspond, à peu près, à leur fréquence de présence dans le tableau $tirage.
En fait, j'aurais du nommer le tableau $tirage, $souche et le tableau $result, $tirages, ç'aurait été plus clair, probablement.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
J'ai réussi à faire ce que je voulais en m'aidant de ton code.
J'ai utilisé array_rand pour sélectionner un index aléatoirement.
Merci beaucoup
Hors ligne