Sporsmal: HW # 5 Monte Carlo Simulering C + + «Craps» Utgang: Pakrevd – Input / Output Screen Program L.

Sporsmal: HW # 5 Monte Carlo Simulering C + + «Craps» Utgang: Pakrevd – Input / Output Screen Program L.

HW # 5 Monte Carlo Simulering C ++

Utgang: Pakrevd – Input / Output Screen.

Koden din gar her.

Du ma skrive en topp ned pseudokodeoppforing for craps-spillfunksjonen og programmet med fullstendige raffinementer.

Hovedprogrammet ditt ma lese returverdiene fra craps-funksjonen og holde oversikt over vinnfrekvensen. Din craps-funksjon skal returnere 0 for tap og 1 for en seier. Din hovedfunksjon skal telle antall forsok og antall gevinster. Gevinstprosent er forholdet mellom seier og forsokstider 100. Utgangen skal v re et flytende punktnummer, sa du trenger en static_cast-operator hvis du teller i ints.

Prosessen med iterativt a kalle simuleringer av tilfeldige prosesser kalles Monte Carlo etter kasinoene pa den franske rivieraen. Tilfeldige prosesser er prosesser hvis utfallene er uforutsigbare i starten av prosessene. Studien av tilfeldige prosesser oppsto ved a beregne oddsen for gamblingprosesser og skape spill som ga illusjonen om rettferdighet, samtidig som man garanterte at huset ville ta en prosentandel over tid.

For a sikre at dine iterative prosesser er virkelig tilfeldige ma du fro din tilfeldige nummergenerator riktig. Dette gjores ved a bruke «srand (time (0));» kommandoen. Hvis saningen er ferdig i craps-funksjonen og craps-funksjonen kalles mer enn en gang i et gitt sekund, vil craps-funksjonen generere den samme sekvensen gjentatte ganger. Dette problemet er kurert ved a gi srand-kommandoen et storre omfang og bare utfore det en gang i hovedfunksjonen for noen anrop til craps-funksjonen.

Det endelige sporsmalet du ma svare er «Hva er de sanne oddsene for a vinne pa craps spillet du nettopp har programmert?». Hvis du kjorer et begrenset antall sykluser, si 10, av spillet du kan vinne, eller du kan miste. Dette er karakteren av spillets tilfeldighet. For a se hvor tilfeldig prosessen bare kjorer programmene flere ganger med samme antall sykluser hver gang. For a bestemme et noyaktig tall ma du kjore simuleringen mange ganger. Standarden pa repeterbarhet for prosessen din vil v re 10 gjentatte tester med resultater som ikke varierer mer .2% fra hverandre.

Tallene som vises i dokumentet for innsendingsformat er ikke garantert a v re de riktige svarene.

Ditt program ma vise hilsen og sporringen som vises i innleveringsformatet.

Ditt program ma godta en innforing av antall sykluser som skal utfores.

Input 100000000. Det er 100.000.000.

For dette programmet vil du starte med 10 sykluser og oke med krefter pa 10 til gevinstprosenten konvergerer eller til du nar grensen pa 100000000.

Ditt program ma utfore antall sykluser og beregne gevinstprosenten.

Du ma vise vinnprosenten til minst 3 desimaler i tabellform.

Bruk setw (9) for count-kolonnen.

Kopier koden fra figur 5.10 til prosjektfilen din.

Endre koden ved a konvertere hovedfunksjonen til en craps-funksjon.

Lag en craps-funksjon.

Gi en prototype for funksjons craps.

Returner vinn eller mister verdi fra funksjon.

Endre hovedfunksjonen for a ringe craps-funksjonen flere ganger og ta opp vinn / tap statistikk.

Flytt «srand» kommandoen til hovedmenyen.

Skriv nestede lokker for a utfore tester.

For (i = 10; i & cycles; i * = 10)

Ring craps-funksjonen inne i sloyfen.

Count vinner og prover.

Beregn vinneprosent etter spennende lokke.

Feilsoking ved a kjore med cout uttalelser for diagnostikk.

Kommentere utdragene i koden din og kompilere dem igjen.