Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]losowanie z wagami
elmozaur
post
Post #1





Grupa: Zarejestrowani
Postów: 518
Pomógł: 18
Dołączył: 21.07.2008

Ostrzeżenie: (0%)
-----


Witam

czy ktos moze naprowadzic mnie w pewnej kwestii.
chcialbym zrobic losowanie cyferek 0-9 ale tak aby cyferki 3,6,9 byly losowane czesciej (tak jakby bardziej promowane przy losowaniu)

samo losowanie moge zrobic mt_rand ale z tymi wagami to nie wiem jak ruszyc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Tort, w tym konkretnym przypadku, zwany czasem "kołem ruletki" to prosa rzecz. Bierzesz wszystkie wagi sumujesz i wagę dzielisz przez nią, a w ten sposób wiesz jak duzy masz kawałek tortu dla określonej wartości. Różnie natomiast ludzie podchodza do sprawy wskazania kawałka wylosowanego i formy zapisu liczb na kole ruletki. Tutaj pomysłów jest wiele i co programista to pewnie będzie miał inny (IMG:style_emoticons/default/wink.gif)
Przykładowo bazowe jest 1 i ok, ale powiesz, że są to liczby 1, 2, 3 i 4 ma 2, 5 ma 3 a 6 ma 0.5 co daje sumaryczne 8.5, a więc wagi są:
1,2,3: 1/8.5 = 2/17
4: 2/8.5 = 4/17
5: 3/8.5 = 6/17
6: 0.5/8.5 = 1/17
Jak widzisz wielkości kawałków są banalne do uzyskania. Problem ludziom sprawia jak z liczby rand ( od 0 do 1 ) uzyskać co wylosowano. I w sumie jak wspomniałem trudno podać jeden algorytm, bo ludzie stosują ich wiele. Przykład? Zapisujemy jako klucze liczby, a jako wartości sumę wartości kawałka tortu oraz elementów poprzednich. Możemy jednak dla optymalizacji choćby posortować je od największych do najmniejszych wartości wag wcześniej. Ogólnie można tutaj kombinować (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 17:33