Ich soll folgendes Muster erzeugen:
https://imgur.com/p2xbj9Y
Das habe ich bis jetzt:
https://imgur.com/0RrIDh1
Das ein Paar Zeilen doppelt sind, ist auch ein Problem, aber hat momentan keine hohe Priorität.
Mein Problem liegt eher darin, das Muster jetzt auch noch auf der waagerechten Ebene zu wiederholen.
Das ist mein bisheriger Code:
Die waagerechte Darstellung hätte ich nun ähnlich probiert, also mit for "(int y = 1; y <= horizontalRepeats; y++)". Aber ich weiß jetzt nicht wie ich es printe, also bei senkrecht war es "System.out.println();" , aber was ist das waagereche Gegenstück? "System.out.print();" scheint nicht zu funktionieren.
Wahrscheinlich eine sehr einfache Lösung, aber als totaler Anfänger ist es für mich noch ein Problem. Array und andere weiterfortgeschrittene Dinge dürfen wir noch nicht verwenden.
Ich bin für jede Hilfe dankbar!
https://imgur.com/p2xbj9Y
Das habe ich bis jetzt:
https://imgur.com/0RrIDh1
Das ein Paar Zeilen doppelt sind, ist auch ein Problem, aber hat momentan keine hohe Priorität.
Mein Problem liegt eher darin, das Muster jetzt auch noch auf der waagerechten Ebene zu wiederholen.
Das ist mein bisheriger Code:
Java:
public class Muster {
public static void main(String[] args) {
final char indentChar = ' ';
final char fillChar = '+';
int fillWidth;
int indentWidth;
int triangleBaseLength = 9;
int triangleHeight = (triangleBaseLength / 2) + 1;
int horizontalRepeats = 5;
int verticalRepeats = 2;
for (int y = 1; y <= verticalRepeats; y++) { //senkrechte Wiederholung
for (int i = 0; i < triangleHeight; i++) { //Spitze unten
for (indentWidth = 0; indentWidth < triangleHeight * 0 + i; indentWidth++) {
System.out.print(indentChar);
}
for (fillWidth = 0; fillWidth < (triangleBaseLength - i * 2); fillWidth++) {
System.out.print(fillChar);
}
System.out.println();
}
for (int i = 1; i <= triangleHeight; i++) { //Spitze oben
for (indentWidth = 0; indentWidth < triangleHeight * 1 - i; indentWidth++) {
System.out.print(indentChar);
}
for (fillWidth = 0; fillWidth < (i * 2 - 1); fillWidth++) {
System.out.print(fillChar);
}
System.out.println(); //senkrechte Wiederholung
}
}
}
Die waagerechte Darstellung hätte ich nun ähnlich probiert, also mit for "(int y = 1; y <= horizontalRepeats; y++)". Aber ich weiß jetzt nicht wie ich es printe, also bei senkrecht war es "System.out.println();" , aber was ist das waagereche Gegenstück? "System.out.print();" scheint nicht zu funktionieren.
Wahrscheinlich eine sehr einfache Lösung, aber als totaler Anfänger ist es für mich noch ein Problem. Array und andere weiterfortgeschrittene Dinge dürfen wir noch nicht verwenden.
Ich bin für jede Hilfe dankbar!