Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
AnySudoku
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

AnySudoku

beantworten | zitieren | melden

So ich bin der Meinung, dass sich mein neuestes Projekt, für das ich Excite auf Eis gelegt habe, bereits sehen lassen kann: AnySudoku.

Wie der Name schon sagt hat das was mit Sudokus zu tun:
-Es generiert Sudokus
-Es löst Sudokus
-Man kann damit Sudokus selber lösen
-Es überprüft Sudokus

das ganze in verschidenen Größen und Formaten, bis jetzt gibts folgende:
Blöcke/Spielfeldgröße
3*3 /9*9 :das Standardsudoku schlechthin
3*2 /6*6
2*2 /4*4
3*4 /12*12
3*3 /9*9 Samurai

Backtracking und Ausdünnen werden verwendet.

Die generierten Sudokus sind zwar immer mit Logik eindeutig lösbar aber nicht immer ganz einfach, da das Programm ziemlich effektiv ausdünnt und davon ausgeht, dass man das auch macht.

hier ein Screenshot mit einem samurai Sudoku drauf:
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Floste am .
Attachments
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

beantworten | zitieren | melden

Was geplan ist:
-weitere Formate (x sudoku, 16*16/ 4*4, 2 ineinander geschachtelte...)
-unterschidliche Schwierigkeitsgrade für die generierten Sudokus
-speichern Funktion
-Chaossudoku und ein Editor dafür
-eventuell Webservice
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Floste am .
Attachments
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers
Siassei
myCSharp.de - Member



Dabei seit:
Beiträge: 401

beantworten | zitieren | melden

Hallo,

ich hab mir dein zip-Archiv runter geladen und muss sagen "Nicht schlecht her Specht" Dein ZIP-Archiv lässt sich mit Ark unter KDE 4.1 nicht öffnen. Warum auch immer.

Jedoch vermisse ich den SourceCode.
private Nachricht | Beiträge des Benutzers
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

beantworten | zitieren | melden

Was willst du denn mit dem Code? Da stehen eh kaum Kommentare drin und zum reinschauen reicht doch auch reflector.

Wenn jemand helfen will: Ich kann eine Komponente, die Anfragen über http beantwortet gut gebrauchen:
-extra Thread,sodass man nur eine Startmethode aufrufen muss
-soll bei einer Anfrage eine methode aufrufen, die dann einen string zurückgibt und das las html an den Browser schicken
-soll den Standartbrowser starten können
-soll sich die addresse/port so wählen, dass es auch bei 2 Instanzen gleichzeitig keine probleme gibt
-keine ungefangenen exceptions vonwegen ungültige Anfrage,Verbindung unterbrochen etc.

Ps: ich verwende 7zip zum packen.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Floste am .
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers
HyperteX
myCSharp.de - Member



Dabei seit:
Beiträge: 182
Herkunft: Karlsruhe

beantworten | zitieren | melden

Zu deiner Thread Sache:
Verwende doch den BackgroundWorker

Web Abfragen:
Gibt es die WebClient Class einfach mal suchen ;-)

Standart Browser öffnen:
Process.Start("http://www.google.de");


Wünsche:
- Zoom Funktion für Vollbild z.B.
- Speicerhn & Laden von Sudokus zum späteren weiterspielen.
- Einfachere Bedienung (hab echt ne gefunden, wie ich jetzt eins generieren kann)
Hierfür vielleicht unterscheiden von Spielen & Lösen in z.B. getrennte GUIs
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
private Nachricht | Beiträge des Benutzers
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

beantworten | zitieren | melden

@HyperteX
Threads und so bekomm ich auch alleine hin und mit der Klasse Httplistener und der doku auch den Rest. Html ist sowieso Fleißarbeit.

Allerdings hatte ich bei Netzwerkgeschichten bisher immer eine längere Testphase, weil mehrere anfragen gleichzeitig managen und alle Fehler bei der Übertragung abfangen und managen doch recht aufwändig war. Deshalb dacht ich, es könnte jemand was in der Richtung für mein Projekt schreiben.

-Für eine Zoomfunktion müsste ich einiges ändern.
-Speichern und laden ist da schon einfacher. Steht allerdings gaanz weit hinten auf meiner liste.
-Zur Bedienung: wie kann man das denn einfacher machen? Bis jetzt muss man zuerst die Form des Sudokus generieren: Das Menue mit dem Gitter als Symbol. Dann die Zahlen: Das menue mit der 1 und dem Stern.
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers
HyperteX
myCSharp.de - Member



Dabei seit:
Beiträge: 182
Herkunft: Karlsruhe

beantworten | zitieren | melden

Also entweder ich versteh net was Du willst, oder du stellst dir das anders vor :-)
Du willst doch irgend was mit irgend welchen Webseiten (z.B. PHP) oder so austauschen oder? Oder Willst Du irgendwie daraus ein Netzwerkspiel für 2+ Spieler machen (jedoch bleibt mir der Sinn bei Sudoku verschleiert :-)

Wegen der Bedienung.
Du könntest z.B. einen Wizard machen, welcher dich durch den Start begleitet. Also:
-> Modus: Generieren oder Lösen?
-> Spielfläche
-> Sonstiges
-> Und Los!

Nochmal wegen dem Threading:
Warum generierst Du net einfach im backgroundWorker oder so? das is doch wahrscheinlich ne Sache von Minuten bis das läuft :-)
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo ihr beiden,

behandelt solche Nebenkriegsschauplätze bitte nicht in "Projekte". Macht bei Bedarf einen extra Thread dafür auf.

herbivore
private Nachricht | Beiträge des Benutzers
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

beantworten | zitieren | melden

So jetzt gibts ne neue Version.
- Sehr viel schneller: nurnoch 5 Sekunden statt 40 um ein Samurai 9*9 Sudoku zu erstellen.
-Erstellen von Sudokus in einen anderen Thread ausgelagert
-Fortschrittsbalken (fast schon wieder überflüssig)
-Anzeige im Webbrowser zum Ausdrucken (Ich hab ein bisschen Unfug mit css getrieben, also versucht garnicht erst, 2 Sudokus auf eine Webseite zu kopieren!!)
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers
HyperteX
myCSharp.de - Member



Dabei seit:
Beiträge: 182
Herkunft: Karlsruhe

beantworten | zitieren | melden

Hi,

habs grad nochmal in der neuen version gespielt = schöne Änderungen!

Ich hab noch zu meinen vorherigen Vorschlägen neue :-)

- Vorgegebene Zahlen lassen sich bearbeiten => Schreibschutz
- Wenn man mehrere Fehler macht heißt es immer noch "Sie haben EINEN Fehler gemacht."
- Was ist der Eingabemodus und was ändert er?
- Mehrere Schwierigkeitsstufen (Je schwerer desto weniger vorgegeben Zahlen)

Gruß
HyperteX
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
private Nachricht | Beiträge des Benutzers
Siassei
myCSharp.de - Member



Dabei seit:
Beiträge: 401

beantworten | zitieren | melden

Hallo,

kennt ihr eigentlich schon die Beschreibung für das Lösen eines Sudokus
private Nachricht | Beiträge des Benutzers
gobbo
myCSharp.de - Member

Avatar #avatar-2732.jpg


Dabei seit:
Beiträge: 80
Herkunft: Hamburg

beantworten | zitieren | melden

nö, kannte ich noch nicht, ist mir jetzt aber zu kompliziert (viertel vor 11 bin ich noch nicht ganz wach)
private Nachricht | Beiträge des Benutzers
Alf Ator
myCSharp.de - Member



Dabei seit:
Beiträge: 656

beantworten | zitieren | melden

Von mir auch noch ein paar Hinweise:

- Man kann mehrstellige Zahlen in ein Feld eingeben.
- Schön wäre es, wenn sich das Spielfeld an das Fenster anpassen würde.
- Vllt. den Fortschrittsbalken net in ein eigenes Fenster.

- Diesen Eingabemodus verstehe ich auch nicht.

Ansonsten schön gemacht, bin grade dabei ein Samurai-Sudoku zu lösen. =)
private Nachricht | Beiträge des Benutzers
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

beantworten | zitieren | melden

So ich bin grade aus dem Urlaub zurück und muss sagen: die nächste Version veröffentliche ich wenn überhaupt frühestens in ca. 1,5 wochen.

-Ich hab noch einen Fehler gefunden, dass beim Ausdünnen bestimmte Kombinationen nicht getestet werden. Das führt dazu, dass nicht so viele Sudokus ohne backtracking gelöst werden können. (2erpaare werden alle gestestet.) Das Lösen des Fehlers verschlechtert die Performance ziemlich.
-Weitere Optimierungen, um dem entgegenzuwirken einbauen
-Außerdem will ich noch eine Weitere Lösungstechnik einbauen.
-Dann kommen noch Schwirigkeitsgrade dran. Dafür muss ich aber die Art, wie Sodokus erstellt werden, etwas verändern.

Danach kommt die Gui erst dran.
Zitat von Alf Ator
- Man kann mehrstellige Zahlen in ein Feld eingeben.
Wie soll man sonst sudokus mit 12 oder 16 Feldern pro Block/Spalte/Zeile ausfüllen?
Zitat von Siassei
Hallo,
kennt ihr eigentlich schon die Beschreibung für das Lösen eines Sudokus
Weder kannte ich das, noch hab ich ernsthaft Lust mich da durchzuarbeiten.
Zitat von HyperteX
- Vorgegebene Zahlen lassen sich bearbeiten => Schreibschutz
Gute idee! aber gehört zu gui.
Zitat von HyperteX
Wenn man mehrere Fehler macht heißt es immer noch "Sie haben EINEN Fehler gemacht."
Das steht ziemlich weit unten auf der Todo Liste. Ich hatte die Funktion nur in die Gui eingebaut,weil ich die entsprechenden Funktionen schon woanders gebraucht hatte.
Zitat von HyperteX
- Was ist der Eingabemodus und was ändert er?
Dass die Zahlen eine andere Farbe haben und gesondert behandelt werden können.

Ich überlege grade, ob ich damit Sudokuhefte herausgeben kann/soll.
*Vorschau guck* man was für ein langer Post
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers
Floste
myCSharp.de - Member

Avatar #avatar-2376.jpg


Dabei seit:
Beiträge: 1.130
Herkunft: Norddeutschland

Themenstarter:

beantworten | zitieren | melden

gepatchte exe, die sich ohne administratorrechte starten lässt.
sonst keinerlei veränderungen zur obigen version.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Floste am .
Attachments
Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!
private Nachricht | Beiträge des Benutzers