Frage:
Es soll ein Schachbrettmuster einmal via Iteration und einmal via Rekursion erstellt werden. Die Felder werden hierbei mit "#" für schwarz und einem Leerzeichen für weiß dargestellt. Die Seitenlänge des Bretts wird per User Eingabe vorgegeben.
Die iterative Lösung konnte ich relativ einfach mit einer geschachtelten for-Schleife lösen, allerdings weiß ich jetzt nicht genau wie ich eine geschachtelte for-Schleife in eine Rekursion konvertiere.
Code:
Iterative Lösung:
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// Benutzereingabe
System.out.println("Seitenlänge eingeben:");
int a = input.nextInt();
for (int k = 1; k <= a; k++) { // Reihen
for (int i = 1; i <= a; i++) { // Spalten
if ((i + k) % 2 != 0)
System.out.print("#");
else
System.out.print(" ");
}
System.out.print("\n");
}
}
Rekursive Lösung bisher:
public static void schach(int seitenlaenge) {
if (seitenlaenge > 0) {
if (seitenlaenge % 2 != 0) {
System.out.print("#");
} else {
System.out.print(" ");
}
schach(seitenlaenge - 1);
}
}
Damit wird nur eine Zeile ausgegeben, brauche denke ich noch eine zweite Methode welche jedesmal wenn "seitenlänge == 0" ist die Reihe wechselt und von vorne beginnt aber wie gesagt komme da gerade nicht weiter.