Erste Schritte Rechteck aus Sternchen

Die Aufgabenstellung ist im Anhang ich schaffe es leider nicht, dass das Rechteck aufgefüllt wird.
Hat jemand eine Idee ?
Hier ist mein Code :
Java:
 //Aufgabe 4c
   
    Scanner sc = new Scanner(System.in) ;
    int breite ;
    int hoehe ;
   
    System.out.println("Breite?");
    breite = sc.nextInt();
    System.out.println("Höhe?");
    hoehe = sc.nextInt() ;
   
    for (int i =0;i<=breite ;i++ ) {
      System.out.print("*");
    } // end of for
   
   
   
    for (int i=0;i<=hoehe ;i++ ) {
      System.out.print("*");
      System.out.println("*");
    } // end of for
  } // end of main
 

Anhänge

  • AusgabeVonSternchen.png
    AusgabeVonSternchen.png
    20,4 KB · Aufrufe: 89

Tarrew

Top Contributor
Du musst für jede Zeile jeweils x=breite Sternchen ausgeben. Also brauchst du zwei ineinander verschachtelte for-Schleifen. Die äußere iteriert über die Zeilen und die innere gibt jeweils die Sternchen für die aktuelle Zeile aus.
 

Tarrew

Top Contributor
Die Breite des Rechtecks gibst du ein. Es werden also für jede Zeile "breite" Sternchen ausgegeben, wobei "breite" eben die Anzahl ist, die du vorher eingegeben hast.

Zeig doch mal deinen Code, wie du es jetzt versucht hast.
 
Java:
 Scanner sc = new Scanner(System.in) ;
    int breite ;
    int hoehe ;
   
    System.out.println("Breite?");
    breite = sc.nextInt();
    System.out.println("Höhe?");
    hoehe = sc.nextInt() ;
   
    for (int i =;i<=breite ;i++ ) {
      System.out.print("*");
      for ( int x=0;x<=hoehe ;x++ ) {
        System.out.println("*");
      } // end of for
    } // end of for
 

Tarrew

Top Contributor
Deine äußere for-Schleife sollte durch die Zeilen iterieren (also von 0 bis hoehe) und deine innere for-Schleife über die breite. Das hast du bei dir vertauscht (zmdst. von den Variablennamen her).

Du bist dann in der 1. Zeile, und gibst alle Sternchen der Zeile aus.
Die äußere for-Schleife zählt dann einen Zähler hoch (nächste Zeile) und die innere gibt darauf hin wieder alle Sternchen der aktuellen Zeile aus.

Es muss also nur deine innere for-Schleife die Sternchen ausgeben. Die äußere Schleife macht lediglich einen Zeilenumbruch mit.
Java:
System.out.println();
 

Neue Themen


Oben