• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Fehler in tief verschachteltem js Projekt

silberfuchs

Neues Mitglied
Hallo! Im Rahmen eines "Sudoku-Lösers" (der nur lokal laufen soll, also nicht übereinen Server), habe ich eine stark verschachtelte js- Konstruktion angelegt. In ein Sudoku-9-fach- Eingabefeld kann man die entsprechenden Zahlen eingeben und nach anklicken des Startbuttons wird das Rätsel gelöst. Funktioniert einwandfrei. Mit einem "Neu"- Button werden dann alle Zahlen im Anzeigefeld und in den entsprechenden Arrays gelöscht.
Gibt man neue Zahlen ein und klikt den Start-Button an, passiert nichts, d. h. der Button bewegt sich , aber die entsprechende Funktion wird nicht gestartet. Ich habe viel experimentiert , aber keine Lösung gefunden. Ich vermute , dass es an irgendeiner der zahlreichen for oder while Schleifen liegt.
Als Editor habe ich Phase5 verwendet.
Der Button "Füllen" und die dazugehörige Funktion dient nur Testzwecken um die dauernde Zahleneingabe zu vermeiden, soll nach Fertigstellung entfernt werden.
Ich hänge den Code der 3 Dateien mal an, wer Interesse hat kann mir ja helfen.
Die "Schönheit " des HTML-Form " ist noch sehr bescheiden, ich möchte aber erst das js-script in die Reihe bekommen.
Danke im Voraus
Und hier findet Ihr die Dateien, die zum Projekt gehören: https://www.dropbox.com/sh/kdqp6mri2293kfo/AABKr6kSQaMb5I1Y-rq0z_dLa?dl=0
 
Werbung:
Moin,
wenn du auf "neu" klickst, musst du auch deine Variablen zurücksetzen. Die haben nach einem durchlauf schließlich alle andere werte.
Code:
AnzahlLeereFelder = 81;
    HauptFeld = new Array(81);  MoeglicheZ = new Array(81);
    Probierstufe = new Array(81); for(var i = 0; i <= 80; i++){Probierstufe[i] = 0;}
    Reststring = new Array(9); Feld_gesetzt = new Array(9);
    for(var i = 0; i <= 8; i++){Reststring[i]=0; Feld_gesetzt[i] = 0;}
    fehler = false; pst = 0; dl = 0;
Zudem hast du eine variable und eine funktion names "start", das funzt nicht gut, wenn alles global ist.

MfG
 
Danke für Deine Hilfe. Habe inzwischen das erste mal mit der Console von Google Crome gearbeitet und den Hinweis bekommen " start is not a function", da war mir mein Fehler auch klar. Dann habe ich gesehen, das die Variable "AnzahlLeereFelder" negative Werte angenommen hat. Damit war alles o.k.
Danke nochmal !
 
Werbung:
Zurück
Oben