Problema gioco carte napoletane

skull83
Salve a tutti, sto lavorando ad un progetto in c per la creazione di un gioco.

Il gioco è semplice, prendo un mazzo di carte napoletane (10 valori, 4 semi, 40 carte totali), lo mischio e di distribuisco ad n giocatori una carta ciascuno, perde/perdono il/i giocatore/i con la carta più bassa ( ad esempio se ci sono 2 assi, perdono entrambi).
Il software deve calcolare la % di sconfitta di una carta ovviamente senza conoscere le altre in gioco.

La mia difficoltà non è assolutamente sul lato della programmazione (quindi non sono off topic) ma dal punto di vista matematico.

Inizialmente sembrava facile, avevo pensato a questa formula:

% di sconfitta = ${[(10-"valorecarta")*4]+3}/39$ ad esempio se ho 3 la mia percentuale di sconfitta è 38,46%

questa formula tuttavia funziona solo se i giocatori sono 2 e vi spiego perchè:
se i giocatori aumentano la logica vuole che sia più facile perdere anche con una carta alta visto che aumentano le probabilità che tutti gli altri giocatori ne abbiano una maggiore... quindi vorrei tener conto di sta cosa nella formula...

se riuscire aiutatemi... vi ringrazio

Risposte
skull83
ho dimenticato di moltiplicare per 100 quella formula ma il concetto non cambia

manfredi92
Allora se ho capito il gioco, dovrebbe semplicemente essere una cosa così.

Se i giocatori sono due A e B, la probabilità che A vinca con la carta x ->$ P(A) = ((x-1)*4)/(39) $

A vince $hArr$ B perde.

La probabilità che B perda è data dalla formula che dicevi tu

$ P( \bar{B} )= ((10-x)*4+3)/(39) $

ora se i giocatori sono 3.
A vince $hArr (\bar{B}nn\bar{C}) -> P(\bar{B}nn\bar{C}) = (((10-x)*4+3)/(39))^2$

se i giocatori sono n, allora sarà semplicemente $ (((10-x)*4+3)/(39))^n$

skull83
Credo tu voglia dire n-1...

Comunque grazie, domani provo questa implementazione

manfredi92
Si certo n-1

skull83
ciao, ho messo la tua formula in excel e non mi quadra. Provo a spiegarti il motivo:

se in mano ho il 10 perdo se tutti gli altri giocatori hanno il 10 (perdiamo in 4)
se in mano ho il 9 perdo se tutti gli altri giocatori hanno il 10 o 9
se in mano ho il 8 perdo se tutti gli altri giocatori hanno il 10 o 9 o 8

questo vuol dire che per vincere automaticamente col 10 ci devono essere almeno 5 giocatori compreso me (in modo che siano usciti tutti i 10 ed almeno una carta minore che perderebbe)

per vincere automaticamente col 9 ci devono essere almeno 9 giocatori compreso me (in modo che siano usciti tutti i 10, tutti i 9 ed almeno una carta minore che perderebbe)

con 8 13 giocatori, con 7 17 giocatori e così via.

se vedi l'immagine che ho allegato, con la formula provata in excell si nota come lo 0% di probabilità di sconfitta con 10 lo ho a partire da 6 giocatori, col 8 a partire da 11 giocatori, col 7 da 14 il che è evidentemente errato...


altri suggerimenti?



superpippone
Ciao.
Quella formula non può andare bene.
Il primo giocatore ha a disposizione 40 carte.
il secondo ne ha 39.
Il terzo ne ha 38.
Il quarto ne ha 37.
.......
Voi calcolate come se tutti i giocatori, dal secondo in poi, avessero sempre la "scelta" fra 39 carte.

superpippone
Ritengo che i conteggi siano i seguenti:
Probabilità di perdere pescando il 2:

con 2 giocatori: $35/39$

con 3 giocatori: $35/39*34/38$

con 4 giocatori: $35/39*34/38*33/37$
::::::::::::::::

Probabilità di perdere pescando il 10:

con 2 giocatori: $3/39$

con 3 giocatori: $3/39*2/38$

con 4 giocatori: $3/39*2/38*1/37$

con 5 giocatori $3/39*2/38*1/37*0/36=0$

superpippone
$[[(10-x)*4+3]!]/[[(10-x)*4+3-n+1]!]*((39-n+1)!)/(39!)$

Con $x$ valore della carta pescata e $n$ numero dei giocatori.
Si ricordi che $0! = 1$
Se al primo denominatore il fattoriale diventa negativo, il valore del tutto diventa $0$, ovvero è impossibile perdere.
Sperando di non aver scritto castronerie......

skull83
la ringrazio vivamente, è proprio quella che cercavo, va benissimo, i valori sono perfetti... grazie!

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.