Schleifenproblem: Bei geraden Zahlen richtig ausgegeben

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Schleifenproblem: Bei geraden Zahlen richtig ausgegeben

    Thema: Wie können auch gerade Zahlen richtig ausgegeben werden? Code funktioniert leider nur mit ungeraden Zahlen

    Hallo

    habe folgenden Code geschrieben:

    Quellcode

    1. public class Zeichenketten {
    2. private static boolean letztesZeichenPlus = false;
    3. private static int x = 11;
    4. public static void main(String[] args) {
    5. zeichneMuster();
    6. }
    7. public static void zeichneMuster() {
    8. for (int i = 1; i <= x; i++) {
    9. for (int j = 1; j <= x; j++) {
    10. if (letztesZeichenPlus == true) {
    11. System.out.print("*");
    12. letztesZeichenPlus = false;
    13. }
    14. else {
    15. System.out.print("+");
    16. letztesZeichenPlus = true;
    17. }
    18. }
    19. System.out.print("" + '\n');
    20. }
    21. }
    22. }
    Alles anzeigen


    jetzt ist es so, dass meine Aufgabe sagt, dass ich ein Muster ausgeben können muss, das folgendermaßen aussieht:

    +*+*+

    und in der nächsten Zeile muss es dann mit dem nächsten Zeichen in der Kette anfangen. Also praktisch:

    *+*+*

    Wenn ich jetzt bei int x = 11 eingebe, dann funktioniert das Muster perfekt und Java gibt mir ein 11 Spalten breites und 11 Zeilen langes Muster aus bei dem die Zeichen regelmäßig wechseln. Bei geraden zahlen wie z.B 6 kommt dann aber folgendes raus:

    +*+*+*
    +*+*+*
    +*+*+*
    +*+*+*
    +*+*+*
    +*+*+*

    es sollte aber so aussehen:

    +*+*+*
    *+*+*+
    +*+*+*
    *+*+*+
    +*+*+*
    *+*+*+

    ist das überhaupt möglich ist jetzt meine Frage. Bin für jeden Tip offen, da ich erst seit 5 Wochen programmiere und es auch nicht gut kann.