Infinito [yuotube - hacking - informatica - grafica - programmazione -netlog - contest - msn - hentay - autoit source - yuoporn]

MERCANTE IN FIERA in C

« Older   Newer »
  Share  
bucciula
view post Posted on 10/2/2011, 22:08




RAGAZZI CHI MI DA UNA MANO CON QUESTO PROGETTO?? Sto lavorando e non riesco a metterci mano ... :(





2. Mercante in fiera

Un sempreverde, classico delle vacanze di Natale, chi non vorrebbe essere amico di “Funghi e carote”? La versione che dovrete implementare non vi consentirà purtroppo di godere delle grazie della Giapponesina o di vedervi parare d’innanzi il simpatico Struzzo, ma vi restituirà il calore delle feste in qualunque momento vogliate!
Si gioca con due mazzi identici da NUM_CARTE (solitamente 40) carte ciascuno. Su ogni carta è rappresentata una figura diversa. Le figure saranno identificate da una stringa che le descrive. All’inizio del gioco ciascun giocatore (NUM_GIOCATORI) riceve una quantità predefinita di danaro (EURO_GRATIS). Il programma deve fungere da banditore (o mercante) e distribuire le carte (per lo shuffling del mazzo vedi progetto Vegasiano). Fa innanzitutto pagare, a ciascun giocatore , la posta convenuta uguale per tutti. Di un mazzo distribuisce una eguale quantità di carte a ciascun giocatore, tenendo le restanti per l’asta. Il banditore fa in modo che ne rimangano tra un mezzo e un quarto del totale del mazzo (es. se i giocatori sono 8 e le carte 40, ciascuno riceve 3 carte, e 16 restano nel mazzo).
I giocatori scoprono le carte e le dispongono virtualmente in linea di fronte a loro. Le carte rimaste nel mazzo sono messe all'asta, una o più carte alla volta, a piacimento del programma-banditore (scelta casuale di un numero tra 1 e MAX_CARTE_ASTA). Il banditore potrà offrire le carte sia dichiarando la quantità, che al buio, cioè nascondendo le carte all'asta in modo che non si sappia la quantità (scelta casuale).
Appena conclusa l'asta, la somma raccolta (con la posta e con le aste), viene suddivisa per i premi (di solito c'è un primo premio più importante e gli altri via via inferiori) con un algoritmo di suddivisione a vostra scelta che deve rispettare due vincoli: il numero di premi è minore del numero di giocatori; il valore dei premi è decrescente.
Vengono scelte in maniera casuale un numero di carte dell’altro mazzo pari al numero di premi a cui saranno accoppiate.
A questo punto il banditore scoprirà le carte del mazzo con i premi: per prime le carte perdenti ed al termine le carte vincenti. Al termine della partita i premi vengono assegnati ai giocatori che possiedono le carte vincenti e il gioco stamperà il montepremi di ciascun giocatore.

Specifiche implementative: Ogni mazzo è un array di strutture di NUM_CARTE. I giocatori sono strutture che contengono informazioni sulla propria situazione economica e sulle carte possedute (puntatori ad elementi dell’array che forma il mazzo). Le informazioni sui mazzi e sui giocatori devono essere sempre consistenti tra loro.

Bonus: durante la fase di eliminazione il banditore può interrompere (casualmente) per proporre a un giocatore la vendita di una delle sue carte. Se il giocatore accetta la carta va al banditore e il giocatore guadagna i soldi proposti. Sempre casualmente, se il banditore ha delle carte da parte può interrompere la fase di eliminazione per proporre una nuova asta.
 
Top
0 replies since 10/2/2011, 22:08   178 views
  Share