![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 28.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mój problem wygląda następująco:
mam już w pełni gotowy rotator bannerów, ale do wybierania bannera do wyświetlenia używam funkcji rand(), a chce żeby bannery wyświetlały się bardziej proporcjonalnie względem innych. I tu wpadłem na pomysł żeby zastosować ratio. Bardzo proszę o podrzucenie mi jakiegoś pomysłu jak bym mógł to wprowadzić do skryptu. Nie chodzi mi o dokładny skrypt, tylko opis jak mógłbym to wykonać. Dobrze by było żeby też zbytnio nie spowalniało mojego skryptu. Bannery są przechowywane w bazie MySQL jak by to coś zmieniło (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
Matematycznie rzecz biorąc, "ratio" powinno oznaczać, że niektóre bannery wyświetlają się cześciej od innych. Statystycznie: proporcjonalnie do tego nieszczęsnego ratio. Czyli proces bez pamięci. Wtedy sprawa jest prosta: dla każdego bannera umieszczasz w bazie jego wagę, a losując banner trzeba:
- ustalić jakoś kolejność bannerów - policzyć sumę wag - wylosować liczbę od 0 do (suma wag - 1) - sprawdzić, który banner odpowiada wylosowanej liczbie Prosty rozkład prawdopodobieństwa. Natomiast jeżeli proces ma mieć pamięć (pokazanie bannera zmniejsza prawdopodobieństwo pokazania go w przyszłości), to... gorzej. Wtedy musisz określić, jak taki proces ma się zachowywać, i słowo "ratio" na pewno nic tutaj nie wyjaśnia. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 06:13 |