Sterne (for-Schleife)

Status
Nicht offen für weitere Antworten.

jsliderex

Mitglied
Hallo Leute!

Habe ein Problem bei meiner Java-Aufgabe, und zwar geht es um folgendes:
Mithilfe einer for-Schleife soll ein Programm realisiert werden dass es dem Benutzer ermöglicht eine (ungerade) Anzahl von Sternen einzugeben, die dann vom Programm wieder ausgegeben wird.
Beispiel:
Benutzereingabe 7 Sterne:
Programmausgabe:
*
***
*****
*******
*****
***
*

Bei mir funktionierts leider nur bis zur ersten Hälfte, aber seht selbst.
Vielleicht hat jemand Zeit&Lust mir einen Tipp zu geben, was ich falsch mache. Wär sehr nett von euch!
Grüße und Danke im voraus!


Hier mein Code:

Java:
public class stars {

	public static void main(String[] args) {
		
		System.out.println("Sterne");
		
		int i,x;
		
		System.out.println ("Sterne Eingabe: ");
		x= In.readInt();
		for( int sterne=1; sterne<=x; sterne+=2){
		
			for ( i=1; i<=sterne; i++) {
			Out.print ("*");
		}
			    System.out.println();
	
		
		
			for ( i=x; i<=sterne; i--){
				System.out.print("*");
			
				System.out.println();
			}
			
		}
	}
		
}
 
S

SlaterB

Gast
Java:
        for (int sterne = 1; sterne <= x; sterne += 2)
        {
            for (i = 1; i <= sterne; i++)
            {
                System.out.print("*");
            }
            System.out.println();
        }
        for (int sterne = x-2; sterne >= 0; sterne -= 2)
        {
            for (i = 1; i <= sterne; i++)
            {
                System.out.print("*");
            }
            System.out.println();
        }
 

Landei

Top Contributor
Ich suche noch nach einer Formel, mit der ich das mit einer Variable in einer for-Schleife lösen kann :D

So:
Java:
  int x = 7;
  for (int sterne = 1; sterne < 2*x; sterne += 2) {
      char[] chars = new char[x - Math.abs(x - sterne)];
      Arrays.fill(chars,'*');
      System.out.println(new String(chars));
  }
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben