Sudoku Oplosser

Door Storeman storeman, 16 jaar geleden, 7.796x bekeken

Een maat van me ging een sudoku oplosser in excel bouwen, zonder macro's!?! Ik dacht, die is gek, en wilde hem dus even aftroeven.

Ik heb dit in een paar uurtjes in elkaar gezet, en daarna nog een paar uurtjes enige functionaliteit toegevoegd.

Helaas wel wat snel gecode, hierdoor weinig commentaar erin. Wellicht dat een volgende versie dit wel bevat. Daarnaast lukt masterclass sudoku nog niet, hiervoor moet er een tijdelijke aanname gedaan worden. Deze functie wil ik op een rustig moment in mijn leven ooit nog eens toevoegen.

Wat kan deze class?

Los de sudoku op:
->Solve()

Zet een waarde:
->SetValue($row, $column, $value)

Verkrijg een veldwaarde
->GetValue($row, $column)

Verkrijg de complete interne array
->GetAllValues() // Geeft array terug: array( array(rij één waardes), array(rij twee waardes)...)

Verkrijg moeilijkheidsgraad:
->GetDifficulty() // Dit is een schatting, hoeveel er door de oplossingen geloopd moest worden, beschikbaar na uitvoeren van ->Solve()

Is de sudoku geldig, geen dubbele waarden:
->IsValid()

Is de sudoku opgelost?
->IsSolved()

Hoeveel velden zijn er ingevuld?
->GetDefined()


Opmerking, de versie staat 5 bij. Er zijn een paar private keywords aanwezig, wanneer deze verwijderd worden, draait het script net zo mooi op php4. Het script draait bij mij thuis ivm rekenintensieve taken (alhoewel, binnen een seconde kan ie m toch wel oplossen).

Ben je te lui om de sudoku zelf in te vullen in het voorbeeld:
Klik hier

Voorbeeld: http://tuincentrum.dyndns.info/SudokuSolver.php

Gesponsorde koppelingen

PHP script bestanden

  1. sudoku-oplosser

 

Er zijn 16 reacties op 'Sudoku oplosser'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Wessel Johnson
Wessel Johnson
16 jaar geleden
 
0 +1 -0 -1
Ziet er leuk uit!
Harmen
Harmen
16 jaar geleden
 
0 +1 -0 -1
Zo zeg! Heel mooi!
Thomas
Thomas
16 jaar geleden
 
0 +1 -0 -1
Wat moet je ermee, naja, ziet er gaaf uit :)
- SanThe -
- SanThe -
16 jaar geleden
 
0 +1 -0 -1
Notice: Undefined variable: iTrialAndError in c:\program files\easyphp1-8\www\sudokusolver.php on line 150
Peter
Peter
16 jaar geleden
 
0 +1 -0 -1
Uhm,,

Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/www/blackmouse.freehostia.com/QNET/sudoku/index.php on line 281


Hoe werkt het trouwens met die class?
Moet je die er gewoon onder zetten oid?
Vincent
Vincent
16 jaar geleden
 
0 +1 -0 -1
Santhe dan heb je er 1 ingevuld die niet eens kan....
Bij mij werkt hij wel met 1 die kan :-D
Dutchcamel
dutchcamel
16 jaar geleden
 
0 +1 -0 -1
Ik kreeg gister dezelfde error als SanThe, op een sudoku die ik had overgenomen van een die ik op internet even snel gevonden had. Lijkt me sterk dat die niet op te lossen was. Daarnaast hoor je natuurlijk nooit een error te krijgen, ook al zou de sudoku niet op te lossen zijn. Een nette melding daarentegen..
Storeman storeman
storeman storeman
16 jaar geleden
 
0 +1 -0 -1
Bedankt voor de leuke reacties. Ik zag dat er een klein foutje in zat. Heb ik verbeterd.
Wouter K
Wouter K
16 jaar geleden
 
0 +1 -0 -1
mooi zo :)
Cyril
Cyril
16 jaar geleden
 
0 +1 -0 -1
leuk script!
hij werkt de class moet je gewoon er boven zetten. volgens mij, bij mij werkt dat.
Storeman storeman
storeman storeman
16 jaar geleden
 
0 +1 -0 -1
ja, de class erboven of eronder, als hij maar ingeladen wordt voordat je de class will gebruiken. Een bestand wordt door php eerst gescand, daarin worden functies en classes geinitialiseerd. Vervolgens worden de commando's sequentieel verwerkt.
Niels Verwegen
Niels Verwegen
16 jaar geleden
 
0 +1 -0 -1
Kei mooi script :), alleen nog even zoeken naar het nut, maar ik vind het zeker knap gedaan
Thijs X
Thijs X
16 jaar geleden
 
0 +1 -0 -1
Zeer netjes gemaakt :D
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Fatal error: Maximum execution time of 30 seconds exceeded in c:\program files\easyphp1-8\www\sudokusolver.php on line 420
Storeman storeman
storeman storeman
16 jaar geleden
 
0 +1 -0 -1
Aangepast! Je sudoku kan niet met de simpele methode worden opgelost, ik heb nog de ambitie om verder te gaan werken met trial and error, ik was er aan begonnen, maar is nog niet af. Een schoonheidsfoutje dus.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jan Veenstra
Jan Veenstra
16 jaar geleden
 
0 +1 -0 -1
vet:P hij gaf alleen een fout antwoord maarja;P wel cooL

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. sudoku-oplosser

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.