![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
dzień dobry , posiadam 'grę' internetowa i w niej gracze mogą ulepszać swoje przedmioty , szanse na ulepszenie teoretycznie powinny wynosić 90% a w praktyce to działa na zasadzie
wydaje mi się że tak naprawdę szanse nie wynoszą 90% dlatego wpadłem na pomysł aby: Losowanych było 10 różnych liczb z przedziału od 1 do 100 Następnie losowana jest jedna liczba z przedziału od 1 do 100 i jeśli ta jedna liczba jest równa którejś z tych 10 wcześniej losowanych to przedmiot ulega zniszczeniu , jeśli nie zostaje ulepszony . co ty o tym sądzicie (IMG:style_emoticons/default/questionmark.gif) może w jakiś inny sposób lepiej to zrobić lub zostawić tak jak teraz jest (IMG:style_emoticons/default/questionmark.gif) z góry dziękuje za pomoc (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
wszystko fajnie tylko zapomniałem dodać.. są 4 typy kont której dają takie szanse: 90,84,79,73
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
to wrzuć to wszystko w ifa: if(konto==xx || konto==yy ...)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 226 Pomógł: 61 Dołączył: 20.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
hmm nie rozumiem , mógłbyś to bardziej rozwinąć (IMG:style_emoticons/default/questionmark.gif) twój wyżej przykład jest dobry bo jest równa liczba.. ale co jeśli są takie jakie podałem , prosił bym o rozwinięcie (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 226 Pomógł: 61 Dołączył: 20.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Rozwinięcie:
EDIT: No chyba że chodzi ci o szanse typu: 90.84% czy 79.73%, to wtedy faktycznie i szanse i liczby w mt_rand powinieneś pomnożyć przez 100 Ten post edytował Noidea 1.09.2010, 16:58:01 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 450 Pomógł: 84 Dołączył: 27.11.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat twój wyżej przykład jest dobry bo jest równa liczba.. ale co jeśli są takie jakie podałem Cytat 90, 84, 79, 73 liczby całkowite, w czym rzecz ? co tu rozwijać ? Noidea podał chyba najprostsze rozwiązanie (IMG:style_emoticons/default/smile.gif) Jeżeli liczba wylosowana liczba z przedziału od 1 do 100 wyniesie =< 90 warunek zwróci true i pierwszy blok instrukcji zostanie wykonany, jeżeli wyniesie > 90 zostanie wykonany blok else. Pod zmienną $szansa podstawiasz procent określony przez konto, switch. Chyba, że ja czegoś tutaj nie zrozumiałem (IMG:style_emoticons/default/smile.gif) Cytat najpierw używasz mt_srand, a później rand? dla rand jest analogicznie srand. Ten post edytował Quantum 1.09.2010, 17:10:23 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
dałem tylko część kodu i zdaje sobie sprawę że dla srand jest rand a mt_srand mt_rand (IMG:style_emoticons/default/smile.gif) co do losowania i dzielenia , 'myślałem' że będzie w taki sposób bardziej losowa liczba. co do wyżej kodu . pętla foreach słuzy w tym wypadku do pobrania wszystkich wartości z tablicy (IMG:style_emoticons/default/questionmark.gif) (przyznam szczerze że nigdy nie używałem dlatego nie wiem :/..) ogólnie rzecz biorąc nie rozumiem w ogóle tego kodu..
hmm ok już rozumiem.. opracowałem podobny kod do opracowania statystyk ale i tak uważam że większe szanse są że zostanie wylosowana liczba powyżej 90 niż miała by trafić się np 1 19 28 ...... |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 6 Dołączył: 6.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
ale i tak uważam że większe szanse są że zostanie wylosowana liczba powyżej 90 niż miała by trafić się np 1 19 28 ...... Na szybko napisałem sobie taki kodzik
Kilka wynikow: Cytat Ponizej 90: 88 Powyzej 90: 12 Cytat Ponizej 90: 93 Powyzej 90: 7 Cytat Ponizej 90: 94 Powyzej 90: 6 Cytat Ponizej 90: 88 Powyzej 90: 12 Cytat Ponizej 90: 91 Powyzej 90: 9 Cytat Ponizej 90: 87 Powyzej 90: 13 Cytat Ponizej 90: 92 Powyzej 90: 8 Prawdopodobieństwo wynosi zawsze koło 90%, wiec mylisz się. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 12:46 |