We hebben een probleem met kansrekening met dobbelstenen
De bedoeling is dat er met 5 dobbelstenen verschillende combinaties worden gegooid via het poker principe. Het probleem zit hem in de 2 of a kind.
Stel dat je 5 keer gooit, hoe groot is dan de kans dat je 2 dezelfde krijgt, en 3 verschillende. De 3 verschillende mogen niet gelijk zijn aan die 2 dezelfde. Je krijgt dus 4 verschillende waardes met de dobbelsteen.
Volgens onze berekeningen is deze kans 4,6%
2 keer 1/6 omdat de kans op 1 dobbelsteen 1/6 is, en je 2 dezelfde moet hebben. Maar omdat er 6 verschillende waardes zijn (11, 22, 33 etc) is het met 6 vermenigvuldigd. De volgende 3 breuken slaan op de mogelijk dat de waarde NIET gelijk is aan een andere waarde, omdat deze alle 3 verschillend moeten zijn.
Een voorbeeld van two of a kind is 3,3,1,6,5
Dus niet: 4,4,1,2,2 -> dit is Two pairs, dus die telt niet als two of a kind.
Het gekke is dat een zelfgeschreven C programma die dit simuleert het antwoord met een factor 10 teruggeeft. Dus niet 4,6% maar rond de 46%.
Ik weet niet of het van enige relevantie is, maar ok
Wie kan ons vertellen wat er fout is aan onze redenering?
bedankt
De bedoeling is dat er met 5 dobbelstenen verschillende combinaties worden gegooid via het poker principe. Het probleem zit hem in de 2 of a kind.
Stel dat je 5 keer gooit, hoe groot is dan de kans dat je 2 dezelfde krijgt, en 3 verschillende. De 3 verschillende mogen niet gelijk zijn aan die 2 dezelfde. Je krijgt dus 4 verschillende waardes met de dobbelsteen.
Volgens onze berekeningen is deze kans 4,6%
code:
1
| 6 * 1/6 * 1/6 * 5/6 * 4/6 * 3/6 =~ 0.04629, ongeveer 4.6% dus |
2 keer 1/6 omdat de kans op 1 dobbelsteen 1/6 is, en je 2 dezelfde moet hebben. Maar omdat er 6 verschillende waardes zijn (11, 22, 33 etc) is het met 6 vermenigvuldigd. De volgende 3 breuken slaan op de mogelijk dat de waarde NIET gelijk is aan een andere waarde, omdat deze alle 3 verschillend moeten zijn.
Een voorbeeld van two of a kind is 3,3,1,6,5
Dus niet: 4,4,1,2,2 -> dit is Two pairs, dus die telt niet als two of a kind.
Het gekke is dat een zelfgeschreven C programma die dit simuleert het antwoord met een factor 10 teruggeeft. Dus niet 4,6% maar rond de 46%.
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| #include <stdio.h> #include <time.h> /* programma heeft een array met 6 indeces bij elke loop word op de random index de waarde met 1 opgeteld zodat er uiteindelijk een array onstaat waar in staat hoeveel keer elke waarde is gegooid */ int waardes[6] = {0}; int random() { return rand() % 6; } int main() { int i, a, b, c, d, e; time_t t1; (void) time(&t1); srand((long) t1); int totalcount = 0; for (i = 0; i != 100000; ++i) { int count = 0; int j; for (j = 0; j != 5; ++j) { waardes[random()]++; } for (j = 0; j != 6; ++j) { if (waardes[j] > 0) count++; } /* als er 4 verschillende waardes zijn, dit gebeurt alleen als er 2 dezelfde zijn en de rest is verschillend -> two of a kind */ if (count == 4) { totalcount++; } printf("[%d", waardes[0]); int x; for (x = 1; x != 6; ++x) { printf(", %d", waardes[x]); } for (j = 0; j != 6; ++j) waardes[j] = 0; } printf("\n\n%f\n\n", totalcount / 1000.0f); } |
Ik weet niet of het van enige relevantie is, maar ok
Wie kan ons vertellen wat er fout is aan onze redenering?
bedankt
[ Voor 4% gewijzigd door truegrit op 29-03-2006 18:37 . Reden: zat nog een functioncall in die niet in de post zelf stond ]
hallo