Ho ricevuto dal mazziere 13 carte da un mazzo di 52 carte da gioco. Qual è la probabilità che abbia 4 assi?

Possiamo procedere in questo modo:
− i possibili insiemi di 13 carte (prese tra 52) sono 52·51·...·40/13! (ossia C52,13)
− fissati i 4 assi, i possibili insiemi delle altre 9 carte (prese tra le 52-4 = 48 rimanenti) sono 48·47·...·40/9! (ossia C48,9)
− quindi la propabilità cercata è:
48·47·...·40/9!/(52·51·...·40/13!) = 13·12·11·10/(52·51·50·49) = 11/(17·5·49) = 11/4165 = 0.2641...%

Per commenti: calcolo combinatorio neGli Oggetti Matematici.

I calcoli fatti con questa calcolatrice:

Il calcolo fatto col software online WolframAlpha (vedi):
C(48,9)/C(52,13)*100
    220/833 = 0.2641056422569...


Posso studiare il problema anche simulando il fenomeno con un programmino in JavaScript, software che è incorporato in tutti i browser. Basta andare qui: http://macosa.dima.unige.it/js/js.htm (puoi vedere anche qui), cliccare "macosa.dima.unige.it/js.com" e mettere nella finestra in alto quanto segue  (in C ho messo le carte - numerate, da 1 a 52 - e ho supposto che gli assi siano i numeri 1, 2, 3 e 4; verifico se tra le prime 13 carte vi sono 1, 2, 3 e 4):

<pre><script> with(Math) {
n=1e3; x=0; for(i=0; i<n; i=i+1)
 {C = new Array(52); C[1]=floor(random()*52+1); for(j=2; j<=13; j=j+1)
   { U=0; while(U<1) { C[j]=floor(random()*52+1); U=1; for(k=1;k<j;k=k+1) {if(C[k]==C[j]) U=0} } }
 s=0; A=0; for(j=1;j<=13;j=j+1) if(C[j]==1 || C[j]==2 || C[j]==3 || C[j]==4) A=A+1; if(A==4) s=1; x=x+s}
document.writeln ("n=",n,"  fr = ", x/n*100,"%")
n=n*10; x=0; for(i=0; i<n; i=i+1)
 {C = new Array(52); C[1]=floor(random()*52+1); for(j=2; j<=13; j=j+1)
   { U=0; while(U<1) { C[j]=floor(random()*52+1); U=1; for(k=1;k<j;k=k+1) {if(C[k]==C[j]) U=0} } }
 s=0; A=0; for(j=1;j<=13;j=j+1) if(C[j]==1 || C[j]==2 || C[j]==3 || C[j]==4) A=A+1; if(A==4) s=1; x=x+s}
document.writeln ("n=",n,"  fr = ", x/n*100,"%")
n=n*10; x=0; for(i=0; i<n; i=i+1)
 {C = new Array(52); C[1]=floor(random()*52+1); for(j=2; j<=13; j=j+1)
   { U=0; while(U<1) { C[j]=floor(random()*52+1); U=1; for(k=1;k<j;k=k+1) {if(C[k]==C[j]) U=0} } }
 s=0; A=0; for(j=1;j<=13;j=j+1) if(C[j]==1 || C[j]==2 || C[j]==3 || C[j]==4) A=A+1; if(A==4) s=1; x=x+s}
document.writeln ("n=",n,"  fr = ", x/n*100,"%")
} </script></pre>

      Ottengo:

n=1000  fr = 0.1%
n=10000  fr = 0.32%
n=100000  fr = 0.247%

      Impiegando un po' di tempo posso provare con n=1e6 e n=1e7:

n=1000000  fr = 0.2659%
n=10000000  fr = 0.26502%

Posso controllare il ragionamento anche con questo altro script in cui modifico TruthValue nel modo sotto indicato.

{ with(Math) {

var C = new Array(52);
C[1]=floor(random()*52+1);
for(i=2; i <= 13; i++)
  { U=0; while(U < 1) { C[i]=floor(random()*52+1); U=1; for(j=1; j < i; j++) { if(C[j]==C[i]) {U=0} } } }
V=0; A=0; for(i=1; i<=13; i++) {if(C[i]==1 | C[i]==2 | C[i]==3 | C[i]==4) {A=A+1}}
if(A==4) {V=1}

}}

n=2560000 0.264453125% +/- 0.009629432545263383%
n=1280000 0.261875% +/- 0.013551708754346983%
n=640000 0.26515625% +/- 0.01928439404494389%
n=320000 0.2709375% +/- 0.027567181903338536%
n=160000 0.275% +/- 0.0392763381082312%
n=80000 0.2725% +/- 0.05529294157704357%
n=40000 0.285% +/- 0.07996489376348766%
n=20000 0.28% +/- 0.11209526425060681%
n=10000 0.29% +/- 0.16132858609455775%

Potrei anche impiegare R (vedi):

# source("http://macosa.dima.unige.it/r.R")
Event = function() {carte=sample(1:52,13); n=0; for(i in 1:13) if(carte[i]<5) n=n+1; ifelse(n==4,1,0)}
# metto in "carte" i numeri 1,…,52 e assumo che i 4 assi siano le carte 1,2,3,4
PR = function(n) {f = 0; for (i in 1:n) f = f + ifelse(Event(),1,0)
  fr=f/n; S=sqrt(fr*(1-fr)/(n-1)); cat(fr*100, "+/-", 3*S*100,'\n'); fr0<<- fr; n0<<- n}
PR2 = function(n) {f=0; for (i in 1:n) f=f+ifelse(Event(),1,0); n=n+n0; f=f+fr0*n0
  fr=f/n;S=sqrt(fr*(1-fr)/(n-1));cat(fr*100,"+/-",3*S*100,'  n =',n,'\n');fr0<<-fr;n0<<-n}
PR(1e4)
# 0.17 +/- 0.1235942 
PR2(1e4)
# 0.225 +/- 0.1005123   n = 20000 
PR2(2e4)
# 0.2425 +/- 0.07377774   n = 40000 
PR2(4e4)
# 0.25125 +/- 0.05309893   n = 80000 
# ...
PR2(256e4)
# 0.2647852 +/- 0.006813298   n = 5120000 
PR2(512e4)
# 0.2643652 +/- 0.004813918   n = 10240000 
# Posso prendere 0.264±0.005% come valore della probabilit  cercata (OK)