Hallo,
stehe gerade ziemlich auf dem Schlauch. Folgendes:
Ich hab ein Array 9 x 9 Felder. Diese Felder können nochmals in 9 Quadrate (3 x 3) eingeteilt werden (Beispiel ;-) ). Nun hab ich in meiner Klasse Chart (repräsentiert das Feld) eine Methode die da lautet
Square steht hierbei für ein beschriebenes 3 x 3 Quadrat. Die 9 Quadrate sind durchnummeriert von oben links = 0 bis unten rechts = 8. Der Parameter number entspricht der Nummer des gefragten Quadrates.
Nun zur Frage: Wie komme ich am geschicktesten an die vertikale Startposition meines Quadrates?
Ich könnte zwar soetwas machen:
Aber irgendwie finde ich das nicht sehr schön. Gibt es hier einen Algorithmus der mir mittels modulo etc. die linie für das Startfeld meines Quadrates gibt? Ich komm nicht drauf.
Für die Spalte sollte das kein Problem sein hier komm ich mittels
ziemlich schnell zum Ziel. Nur fehlt mir halt die Zeile.
Jede Idee ist willkommen.
Cheers
Oskar
stehe gerade ziemlich auf dem Schlauch. Folgendes:
Ich hab ein Array 9 x 9 Felder. Diese Felder können nochmals in 9 Quadrate (3 x 3) eingeteilt werden (Beispiel ;-) ). Nun hab ich in meiner Klasse Chart (repräsentiert das Feld) eine Methode die da lautet
Code:
public IField[][] getSquare(int number)
Nun zur Frage: Wie komme ich am geschicktesten an die vertikale Startposition meines Quadrates?
Ich könnte zwar soetwas machen:
Code:
if(number < 3){
line = 0;
}elseif(number > 2 && number < 6){
line = 3;
}elseif(number > 5 && number <9){
line = 6;
}
Für die Spalte sollte das kein Problem sein hier komm ich mittels
Code:
column = (number%3) * 3
Jede Idee ist willkommen.
Cheers
Oskar