Liebe Java-Community,
ich habe ein Programm geschrieben, mit dem 120 Schülern ein Fach zugewiesen werden kann, in dem sie eine Facharbeit schreiben. Sie können bis zu 3 Wünsche angeben und die Anzahl an Schreibern / Kurs sind begrenzt. Da es 3^120 verschiedene Konstellationen gibt, muss eine Heuristik her. Daher habe ich einen randomisierten Greedy-Algorithmus geschrieben, bei dem man eingeben kann wie viele verschiedene Konstellationen er durchrechnen soll. Für 100.000 Konstellationen benötigt er ca. 30 Sekunden auf meinem Rechner.
Für die Interaktion mit dem Anwender habe ich eine ganz einfache Konsoleninteraktion programmiert (keine Lust eine GUI für das bisschen Interaktion zu programmieren). Ich habe eine Batch-Datei (start.BAT) geschreiben, die das Programm in der Windows-Console start. An und für sich funktioniert fast alles. Wenn ich allerdings mit Hilfe des Befehls "calc" eine Berechnung initiieren möchte, dann stürzt die Windows-Konsole ab (sie schließt sich einfach).
Wenn ich in der Entwicklungsumgebung allerdings die Java-Console benutze, dann läuft das Programm einwandfrei durch! Ich frage mich wieso Windows damit ein Problem hat und bin ratlos! Da die Berechnung je nach Anzahl zu berechnender Konstellationen durchaus mehrere Minuten oder Stunden rechnen kann frage ich mich, ob Windows die Konsole automatisch stoppt, falls das Programm nicht schnell genug die nächste Aktion auf der Konsole durchführt?
Kann mir jemand helfen?
Viele Grüße
Herr Bolte
ich habe ein Programm geschrieben, mit dem 120 Schülern ein Fach zugewiesen werden kann, in dem sie eine Facharbeit schreiben. Sie können bis zu 3 Wünsche angeben und die Anzahl an Schreibern / Kurs sind begrenzt. Da es 3^120 verschiedene Konstellationen gibt, muss eine Heuristik her. Daher habe ich einen randomisierten Greedy-Algorithmus geschrieben, bei dem man eingeben kann wie viele verschiedene Konstellationen er durchrechnen soll. Für 100.000 Konstellationen benötigt er ca. 30 Sekunden auf meinem Rechner.
Für die Interaktion mit dem Anwender habe ich eine ganz einfache Konsoleninteraktion programmiert (keine Lust eine GUI für das bisschen Interaktion zu programmieren). Ich habe eine Batch-Datei (start.BAT) geschreiben, die das Programm in der Windows-Console start. An und für sich funktioniert fast alles. Wenn ich allerdings mit Hilfe des Befehls "calc" eine Berechnung initiieren möchte, dann stürzt die Windows-Konsole ab (sie schließt sich einfach).
Wenn ich in der Entwicklungsumgebung allerdings die Java-Console benutze, dann läuft das Programm einwandfrei durch! Ich frage mich wieso Windows damit ein Problem hat und bin ratlos! Da die Berechnung je nach Anzahl zu berechnender Konstellationen durchaus mehrere Minuten oder Stunden rechnen kann frage ich mich, ob Windows die Konsole automatisch stoppt, falls das Programm nicht schnell genug die nächste Aktion auf der Konsole durchführt?
Kann mir jemand helfen?
Viele Grüße
Herr Bolte