I tippingsspillet Extra leverer spillere et 5 x 5-brett med unike tall mellom 1 og 75. Det trekkes så 47 unike tall mellom 1 og 75. Man kan vinne en premie med tre forskjellige kriterier:
- Hvis man fyller det innerste 9x9-området av brettet, kalt bilde.
- Hvis man fyller ytterkanten av brettet, kalt ramme.
- Hvis man fyller hele brettet.
Et eksempelbrett er avbildet under.
Vi skal lage en simulator av dette spillet i Matlab, for å analysere våre vinnersjanser. Vi har funnet ut at vi kan representere et resultat-brett som en 5x5 matrise med logiske verdier, hvor en posisjon har verdien true hvis det tilsvarende Extra-brettet hadde en verdi der som ble trukket og false ellers.
Lag en funksjon som tar inn et slikt Extra-brett, og som returnerer true hvis brettet er et vinnerbrett og false hvis det ikke er det.
Videoforklaring (24:24)
Del 1 (8:35) | Del 2 (6:38) | Del 3 (6:40) | Del 4 (2:31) |
---|---|---|---|
Tolkning av oppgaveteksten, oppdeling av problemet i mindre biter, og bruk av funksjoner for å strukturere problemløsningen. | Hvordan finne ut om det indre området i brettet er fylt, vha posisjonsindeksering og funksjonen all. | Hvordan finne ut om det ytre området av brettet er fylt, vha posisjonsindeksering og funksjonen all. | Testing av den endelige løsningen, og konklusjon rundt fremgangsmåte for problemløsning. |
Utdelt kode
Dette scriptet lager noen variabler som inneholder eksempelbrett man kan teste løsningen sin med.