Yahoo Clever wird am 4. Mai 2021 (Eastern Time, Zeitzone US-Ostküste) eingestellt. Ab dem 20. April 2021 (Eastern Time) ist die Website von Yahoo Clever nur noch im reinen Lesemodus verfügbar. Andere Yahoo Produkte oder Dienste oder Ihr Yahoo Account sind von diesen Änderungen nicht betroffen. Auf dieser Hilfeseite finden Sie weitere Informationen zur Einstellung von Yahoo Clever und dazu, wie Sie Ihre Daten herunterladen.

wie überprüfe ich im sudoku die zahlen mit java?

Ich brauche für den Informatikunterricht ein Java-Befehl/Schleife,die die Zahlen eines Java Sudokus überprüft.Wenn jemand weiß wie man das machen kann,würde ich mich über eine Antwort sehr freuen

1 Antwort

Bewertung
  • vor 1 Jahrzehnt
    Beste Antwort

    Was ist ein Java Sudoku?

    Ich interpretiere das jetzt mal so, dass du mit Java ein normales Sudoku prüfen willst.

    Weil es eine Übungsaufgabe ist, werde ich dir keine fertige Lösung liefern. Aber einen Vorschlag, wie ich vorgehen würde.

    Also musst du das Einhalten folgender Regeln prüfen:

    1. Es darf kein Feld leer gelassen werden

    2. Die vorgegebenen Zahlen dürfen nicht verändert werden

    3. In keiner Zeile darf eine Ziffer (1-9) zweimal vorkommen,

    3.5 oder anders ausgedrückt: jede Ziffer (1-9) muss in jeder Zeile genau einmal vorkommen

    4. In keiner Spalte darf eine Ziffer (1-9) zweimal vorkommen,

    4.5 oder anders ausgedrückt: jede Ziffer (1-9) muss in jeder Spalte genau einmal vorkommen

    5 In keinem Block (3*3 Felder) darf eine Ziffer (1-9) zweimal vorkommen,

    5.5 oder anders ausgedrückt: jede Ziffer (1-9) muss in jedem Block (3*3 Felder) genau einmal vorkommen

    Vorgehen grob skizziert:

    Du hast ein zwei-dimensionales Array (9*9 Felder), wo die Zahlen für das Sudoku drin sind.

    Die Prüfung funktioniert eigentlich immer gleich. Du wählst eine Teilmenge bestehend aus 9 Feldern aus, z.B. eine Zeile, eine Spalte oder einen Block, und prüfst, ob jede Ziffer (1-9) in dieser Teilmenge vorkommt. Diese Prüfung wiederholst du für jede Zeile, jede Spalte und jeden Block.

    Das gibt dann also eine Methode, welche prüft, ob die Teilmenge alle Ziffern enthält. Eine Methode, mit welcher du alle Ziffern einer Zeile (1-9) auslesen kannst. Eine Methode, mit welcher du alle Ziffern einer Spalte (1-9) auslesen kannst und eine Methode, mit welcher du alle Ziffern eines Blocks (1-9) auslesen kannst.

    Wenn du das geschafft hast, ist der Rest keine grosse Kunst mehr.

Haben Sie noch Fragen? Jetzt beantworten lassen.