You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Læringsmål:

  • PLACEHOLDER

Pensum:

  • PLACEHOLDER

a)

Spillet Sudoku handler om å fylle 9 rader, kolonner og kvadrater med alle heltall fra og med 1 til og med 9.

8        
9        
1        
2     135
3     246
456123987
5        
6        
7        


Først når alle ni kolonner, rader og kvadrater er ferdig utfylt er spillet ferdig. Man kan bruke tallet 0 for å representere en rute som ikke er fylt med et tall. For eksempel mangler fortsatt sifrene 4,6,7,8,9 (i kolonnene 2-6) i raden under. 

200000135

Soduko i Matlab skal implementeres. Det er fritt valg av hvordan løsningen bygges opp, men følgende krav skal oppfylles:

    • Brukeren skal kunne skrive inn et tall i en valgfri celle. Dersom tallet ikke er gyldig, dvs ikke mellom 1 og 9, skal en feilmelding skrives ut.

    • Brukeren skal ikke kunne fylle inn et tall som allerede finnes i den samme raden, kolonnen eller kvadratet.

    • Brukeren skal kunne slette et tall fra en celle.
    • Hver gang brukeren fyller inn eller sletter et tall skal det nye brettet skrives ut på en fin måte. Et eksempel kan være som vist under (tallene over og ved siden av brettet angir her henholdsvis kolonne- og radnummer).

    1   2 3 4 5 6 7 8 9
-----------------------
1 |   5   |   4 3 | 2 |
2 | 2 | 6 9 | 4 |
3 | | 1 2 | |
-----------------------
4 | 8 | 7 | 4 |
5 | 6 | 4 | 1 2 9 |
6 | 1 | 3 6 | 8 5 |
-----------------------
7 | 7 | 1 | 4 |
8 | 1 4 9 | 5 | 6 |
9 | 3 5 | 4 7 | 2 |
-----------------------
    • Brukeren skal kunne laste inn et brett fra en tekstfil. 
    • Et halvutfylt brett skal kunne lagres til l, slik at man kan fullføre det senere.
    • Spillet skal skrive ut en hyggelig gratulasjonsmelding dersom man har klart brettet.
    • Alt skal utføres gjennom et brukervennlig grensesnitt. Det vil si at brukeren ikke skal trenge å kalle på funksjonene selv, men at alt gjøres via input eller ved å lese fra/skrive til fil.

  • No labels