Gå til innhold

Hvordan lage sudoku?


Anbefalte innlegg

Videoannonse
Annonse

Det er nok ikke så vanskelig å mekke sudoku i php, men det krever en del programmeringsegenskaper. Har tenkt mye på å lage dette spillet i php (som tidsfordriv) eller java, men pg.a militærtjeneste får jeg nok ikke tilstrekkelig med tid. Jeg mener at det er enklere å lage det i php enn i Flash sitt ActionScript (ekstremt likt Javascript). Kan dele konsepttankene mine da;

 

Hovedsakelig går sudoku konseptet ut på at man får et brett på 9x9 ruter. Poenget er å fylle inn tallene 1->9 i hver kolonne loddrett og vannrett. Det som gjør Sudoku optimalt for programmering er at det bare er én rett løsning. Det står alltid noen hjelpetall (er det alle tallene fra 1-9??) i tilfeldige ruter.

 

Løsningen blir å kjøre en algoritme på en todimensjonal array for å fylle rutene, mens man hele tiden sjekker på om man har oppnådd målet. Problemet blir TID - det skal fylles inn tilfeldige tall i rutene, og så lenge kolonnene ikke stemmer med hverandre må algoritmen kjøres om igjen. Det er trolig derfor du ser så mange "ferdiglagde" sudoku spill på nettet.

 

Min pseudokodeløsning;

$brett[8][8];

$ferdig = false;
while(!$ferdig)
{
   for($i = 0;$i<8;$i++)
   {
       for($j = 0;$j<8;$j++)
       {
           sett tilfeldig tall på alle radene
       }
   }
Sjekk om alle radene er ok, hvis ikke må algoritmen kjøres på nytt.. og på nytt og på nytt, dette løses ved å ha if tester i for løkkene som tester på alle rekkene. 
Når alt stemmer, sett $ferdig til true.
}

Tegning må du ta ansvar for sjøl :)

Lenke til kommentar
  • 2 uker senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...