Beim Programmieren in Java Sternchen ausgeben!

6 Antworten

Ich geb dir mal ein Beispiel für die variante mit einer for schleife als pseudo-code

n = leseInteger()

for (i = 0; i < n; ++i) {
    schreibe("*");
}

Das ist alles. Wie gesagt das ist nur Pseudo-code und kein gültiger Java-code. Wie du das für die anderen machen musst darfst du selbst herausfinden.


Misuke1101 
Fragesteller
 07.11.2014, 13:37

Nach dieser Antwort hab ich den Kopf auf den Tisch gehauen. Vieeelen Dank. Ich hatte da echt ein Brett vorm Kopf und habe jetzt auch hingekriegt. Danke Misu-chan

0
Misuke1101 
Fragesteller
 07.11.2014, 13:37

Nach dieser Antwort hab ich den Kopf auf den Tisch gehauen. Vieeelen Dank. Ich hatte da echt ein Brett vorm Kopf und habe jetzt auch hingekriegt. Danke Misu-chan

0

Ich würde jetzt in jeder der vorgegebenen Schleifen zu einem String ein '*' hinzufügen.

Das bedeutet vor der Schleife erstellst Du einen leeren String, und in der Schleife fügst Du diesem String bei jedem Durchlauf ein Sternchen hinzu. Zum Schluss gibst Du dann diesen String aus. Das machst du einfach fünf Mal (entweder fünf Anwendungen oder fünf Prozeduren, die verschieden gestartet werden)

Bsp: Von 1 bis Anzahl -> String + '*'

Musst Du halt in Java umsetzen, das kriege ich jetzt nicht so hin. (Mein Schul-Java ist schon etwas her)


TUrabbIT  07.11.2014, 13:49

Man kann sich auch den Umweg über die String Variable sparen und System.out.print("...") verwenden. Sieht in dem Fall genau so aus

0
for(int i = 0; i < x; i++) { 
System.out.print("*");
}

oder

String asteriks = "";  
for(int i=0; i<x; i++)  { 
astreriks = asteriks + "*";
}
System.out.println(asteriks);

Das entsprechende dann mit do und while Schleife


TeeTier  07.11.2014, 20:34

Die erste Variante ist OK, da gepuffert, aber die zweite Variante ist so ineffizient, dass es selbst bei nur 10 iterationen weh tut ... so etwas macht man doch nicht! Nicht mal zu Demo- oder Testzwecken! ><

Wenn schon, dann mindestens so (obwohl man hier auch noch DEUTLICH mehr optimieren kann, da man ja immer nur das selbe Zeichen x-mal haben will):

StringBuilder asteriks = new StringBuilder(x);  
for(int i = 0; i < x; i++)  { 
    astreriks.append('*');
}
System.out.println(asteriks);

Oder in Python (OT, ich weiß! Nur zum Vergleich!):

print('*' * x)

Ansonsten gute Antwort! :)

0
for(int i = 0; i<x; i++){
      // tu was
}

schonmal sowas gesehen?

Geht es nicht mit "System.out.print("") oder .println("")


W00dp3ckr  07.11.2014, 12:51

Das ist für 1 Sternchen, ich nehm an, das kriegt er hin.

Aber hier geht es um vieleviele Sternchen.

1
TUrabbIT  07.11.2014, 13:35
@W00dp3ckr

Ich ging von einem Problem mit der Ausgabe des Zeichens aus, dachte die Schleife wäre klar.

0
Misuke1101 
Fragesteller
 07.11.2014, 12:51

Ja das schon aber ich muss die Anzahl ja gemäß der Zahl ausgeben, die eingeben wurde. also wie im Beispiel für 5 die er einliest fünf Sternchen. und ich weiß nicht wie ich diese Variable hinbekommen. Aber danke trotzdem schonmal^^ Misu

0