![]() |
Sudoku Löser
Liste der Anhänge anzeigen (Anzahl: 3)
Hier ein einfacher Sudoku Löser in C gschrieben. Er liest die Werte aus einer txt datei ein und gibt sie in einer anderen aus. Ich hab andere Lösungen hier gesehen, und hab mich aufgeregt, dass die
objektorientierung alles so kompliziert macht. MFG |
Re: Sudoku Löser
Hallo simonko,
schönes Programm. Etwas unschön ist der harte Programmabsturz, wenn die Input.txt-Datei nicht da ist. Und sonst ist das wie gehabt. Bei folgender Vorgabe braucht dein Solver wie viele andere eben etwas länger... 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 0 | 0 | 0 | 4 | 0 | 0 | 0 | 0 | 0 0 | 0 | 0 | 0 | 5 | 0 | 0 | 0 | 0 0 | 0 | 0 | 0 | 0 | 6 | 0 | 0 | 0 0 | 0 | 0 | 0 | 0 | 0 | 7 | 0 | 0 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 0 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 9 schade, es geht auch schneller. siehe ![]() Aber trotzdem :thumb: MfG Thorsten |
Re: Sudoku Löser
naja es geht eigentlich um die 2 hauptfunktionen und nicht um die benutzerschnittstelle...
du kannst aber gern alle fehler die dumme benutzer machen könnten abfangen.. ich hab anderes zu tun |
Re: Sudoku Löser
@Omata eigentlich müsste es ja schneller gehen, wenn ich das sudoku einfach drehe, weil du hast ja am ende mehr zahlen reingemacht. dann sind alle kombinationen die er am anfang rechnet umsonst.
|
Re: Sudoku Löser
So wie ich den Code interpretiere, löst er nur eindeutige Sudokus. Wenn es mehrere Lösungen gibt, wird der nicht funktionieren, oder?
|
Re: Sudoku Löser
Doch es funktioniert. Er nimp dabei die erste lösung auf die er kommt.
wenn du das exit(0) entfernst und bei der datei anstatt write append nimmst würde er alle sudokus reinschreiben. das kann aber gefährlich werdn wenn du nur ein paar zahlen vorgibst dann gibt es sehr viele lösungen und die ausgabedatei wird hunderte von MB gros. :) |
Re: Sudoku Löser
@simonko: ja natürlich könntest du es drehen. Nur das Programm müsste dann so schlau sein und das vorher wissen. Das Programm soll es ja lösen und nicht du.
@3_of_8: Wenn es mehrere Lösung gibt, wird bei der ersten gültigen aufgehört - das ist doch völlig ausreichend |
Re: Sudoku Löser
ja dann muss man eben eine funktion schreiben die es dreht. es ist doch nicht so schwer
zu ermitteln wo am meisten werte eingetragen wurden. oder? :) |
Re: Sudoku Löser
Backtracking?
|
Re: Sudoku Löser
ja
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz