Strona 1 z 1

Program - prawdopodobieństwo dobrania kart

: ndz sie 21, 2011 10:03 pm
autor: Tyhagara
Szukam darmowego programu, który wyliczy mi np.

Mam 60 kart w talii, jakie jest prawdopodobieństwo wylosowania: jednej karty A (cztery sztuki w talii) i jednej karty B (4 sztuki w talii) i jednej karty C (20 sztuk w talii), przy założeniu, że dobieram 7 kart, jeśli się nie uda odrzucam je, tasuje talię, ponownie dobieram 7 kart, jeśli się nie uda odrzucam je, tasuj talię i dobieram tym razem 6 kart.

Oczywiście wiem, że wystarczy kartka i ołówek, ale powiedzmy ...że złamałem rysik :huh:
W praktyce nie mam zamiaru tego testować, bo szkoda mi kart.

A może już ktoś robił podobne obliczenia do MtG i można z nich skorzystać?

Re: Program - prawdopodobieństwo dobrania kart

: pn sie 22, 2011 12:05 pm
autor: Narfeamar
Tyhagara pisze:
Szukam darmowego programu, który wyliczy mi np.

Mam 60 kart w talii, jakie jest prawdopodobieństwo wylosowania: jednej karty A (cztery sztuki w talii) i jednej karty B (4 sztuki w talii) i jednej karty C (20 sztuk w talii), przy założeniu, że dobieram 7 kart, jeśli się nie uda odrzucam je, tasuje talię, ponownie dobieram 7 kart, jeśli się nie uda odrzucam je, tasuj talię i dobieram tym razem 6 kart.

Oczywiście wiem, że wystarczy kartka i ołówek, ale powiedzmy ...że złamałem rysik :huh:
W praktyce nie mam zamiaru tego testować, bo szkoda mi kart.

A może już ktoś robił podobne obliczenia do MtG i można z nich skorzystać?


Witam,
Mój pierwszy post na forum (witam wszystkich) niech przynajmniej będzie przydatny.
Do liczenia czegokolwiek polecam stronę WolframAlpha.
Dla tych którym nie chce się wpisywać "binomial(24,3)*binomial(...." etc. lub nie wiedzą jak można to policzyć - z racji braku czegokolwiek lepszego do roboty napisałem rano mały programik (Program do działania wymaga zainstalowanej maszyny wirtualnej Javy).
Po odpaleniu pojawia się małe (naprawdę małe) okienko posiadające dwa pola tekstowe i przycisk.
W górnym polu wpisujemy magiczny ciąg cyfr klikamy przycisk (bądź wciskamy 'enter') i w dolnym polu pojawia się nam wartość prawdopodobieństwa.
W jaki sposób tworzymy 'magiczny' ciąg? Bardzo prostym systemem. Dwie pierwsze liczby to ilość kart w decku i ilość kart którą chcemy dobrać do ręki. Trzecia liczba to ilość warunków które chcemy policzyć - powiedzmy, że 'n'. Dalej znajduje się 'n' par liczb - ile kart pewnego rodzaju znajduje się w decku, oraz ile chcielibyśmy mieć na ręce.
np. Wyżej przytoczona sytuacja: 60 7 3 4 1 4 1 20 1 (60 kart w decku, 7 kart losujemy, 3 warunki, 4 karty A w decku/1 na ręce, 4 karty B w decku/1 na ręce, 20 kart C w decku/1 na ręce).
I pojawia nam się wynik - 0.13164607200720277 (poprawny o ile się nie pomyliłem w teorii ;p).
W przypadku pojawienia się 0.0 - lepiej sprawdzić czy niczego nie zgubiliśmy :)
Przepraszam za toporność i niewygodę obsługi - miłe dla oka i użytkownika GUI pochłonęłoby dużo więcej czasu niż napisanie funkcjonalności.

Pozdrawiam

Re: Program - prawdopodobieństwo dobrania kart

: pn sie 22, 2011 6:22 pm
autor: Tyhagara
Super że ci się chciało :)

Powiedz mi tylko jak mam odczytywać wynik, bo się pogubiłem.

100 10 1 100 10
1.0

100 10 1 50 10
5.934196725858287E-4

100 10 1 50 5
0.6296667731127675

Re: Program - prawdopodobieństwo dobrania kart

: pn sie 22, 2011 9:18 pm
autor: Narfeamar
Tyhagara pisze:
Super że ci się chciało :)

Powiedz mi tylko jak mam odczytywać wynik, bo się pogubiłem.

100 10 1 100 10
1.0


Pierwsze dwie liczby: rozmiar decku (100) i ręki (10), 1 warunek - prawdopodobieństwo wyciągnięcia co najmniej 10 kart których jest 50 w decku, ale nie więcej niż rozmiar ręki.
Wynik - 1.0, czyli zdarzenie pewne (100% pewności, natomiast 0.0 - 0% pewności) ;)

Tyhagara pisze:
100 10 1 50 10
5.934196725858287E-4


Jak wyżej, z tą różnicą, że liczymy prawdopodobieństwo wylosowania 10 kart, których w decku jest 50.
Wynik - 5.934196725858287E-4.
Ten zapis liczby zmiennoprzecinkowej odkodowujemy w ten sposób: 5.934196725858287 E-4=5.934196725858287 *10^(-4)=0,0005934196725858287 (te E-4 na końcu oznacza, że przesuwamy przecinek o 4 miejsca w lewo).
Czyli prawdopodobieństwo wyciągnięcia takiego układu jest bardzo małe (mimo tego, że jest tych kart dużo).

Tyhagara pisze:
100 10 1 50 5
0.6296667731127675


W tym przypadku chcemy wylosować co najmniej 5 pewnych kart (czyli 5,6,7... itd. aż do 10).
tutaj prawdopodobieństwo jest dość duże bo prawie 0.63 (czyli prawie 63%).

Gdybyśmy chcieli znać prawdopodobieństwo wyciągnięcia dokładnie 5 takich kart:
100 10 2 50 5 50 5 <-ostatnia para oznacza, że chcemy wyciągnąć też 5 kart które nas nie interesują
0.2593335462255351
LUB od wyniku zestawu 100 10 1 50 5 odjąć wynik 100 10 1 50 6 (czyli od p. wyciągniecią 5,6,7,8,9 lub 10 takich kart, odejmujemy p. wyciągniecia 6,7,8,9,10).

W razie kolejnych niejasności/pytań - z chęcią pomogę.

Pozdrawiam

Program - prawdopodobieństwo dobrania kart

: pn sie 22, 2011 10:07 pm
autor: Tyhagara
Wielkie dzięki, dobry program. Teraz wszystko jasne, przypomniałem sobie, że miałem to w szkole :razz:
Chyba nie pisałeś tego programu w pracy :wink: ?

Re: Program - prawdopodobieństwo dobrania kart

: pn sie 22, 2011 10:34 pm
autor: Narfeamar
No problemo ;) Cała przyjemność po mojej stronie.
Nie pracuję - jeszcze się uczę.

Program - prawdopodobieństwo dobrania kart

: czw sie 25, 2011 12:26 am
autor: Tyhagara
Polecam tę stronę http://www.mtgdeckbuilder.net i narzędzie "deck builder"
Tworzysz swój deck, możesz testować go dobierając karty losowo, masz statystyki Converted Mana Cost, procentową szansę dobrania konkretnej karty, itp.