Hallo liebe Community,
ich habe hier eine Aufgabe in der ich einen Tannenbaum samt Stamm programmieren soll.
Ich habe soweit das Program geschrieben und es funktioniert auch.
Mein Problem ist jedoch, dass der Stamm beim eingeben von höheren Zahlen nicht ganz mittig erscheint. (Bei 7 ist er perfekt in der Mitte)
Hier mein Quellcode:
public static void printCrown(int height){
for (int i = 0; i < height; i++){ //jede Zeile einmal durchlaufen
for (int j = 0; j<height-1-i;j++){ //für das Leerzeichen am Anfang um die # zu zentrieren
System.out.print(" ");
}
for (int k =0; k<i*2+1; k++){
System.out.print("#"); //ausgabe der # und in jeder zeile zwei mehr
}
System.out.println();
}
}
public static void printStem(int height, int width, int gap){
for (int i = 0; i<height/3; i++){
for (int j =0; j<gap/2+1; j++){
System.out.print(" ");
}
for(int k=0; k<width*2/3; k++){
System.out.print("#");
}
System.out.println();
}
}
public static void main (String[]args){
Scanner scan = new Scanner(System.in);
System.out.println("Wie groß soll die Krone werden?");
int hoehe = scan.nextInt();
printCrown(hoehe);
printStem(hoehe,hoehe,hoehe);
}
}
Da mein Professor keinen Lösungsweg angegeben hat, wende ich mich an euch.
Vielen lieben Dank im Voraus.
LG
Java.beginnerHK
ich habe hier eine Aufgabe in der ich einen Tannenbaum samt Stamm programmieren soll.
Ich habe soweit das Program geschrieben und es funktioniert auch.
Mein Problem ist jedoch, dass der Stamm beim eingeben von höheren Zahlen nicht ganz mittig erscheint. (Bei 7 ist er perfekt in der Mitte)
Hier mein Quellcode:
public static void printCrown(int height){
for (int i = 0; i < height; i++){ //jede Zeile einmal durchlaufen
for (int j = 0; j<height-1-i;j++){ //für das Leerzeichen am Anfang um die # zu zentrieren
System.out.print(" ");
}
for (int k =0; k<i*2+1; k++){
System.out.print("#"); //ausgabe der # und in jeder zeile zwei mehr
}
System.out.println();
}
}
public static void printStem(int height, int width, int gap){
for (int i = 0; i<height/3; i++){
for (int j =0; j<gap/2+1; j++){
System.out.print(" ");
}
for(int k=0; k<width*2/3; k++){
System.out.print("#");
}
System.out.println();
}
}
public static void main (String[]args){
Scanner scan = new Scanner(System.in);
System.out.println("Wie groß soll die Krone werden?");
int hoehe = scan.nextInt();
printCrown(hoehe);
printStem(hoehe,hoehe,hoehe);
}
}
Da mein Professor keinen Lösungsweg angegeben hat, wende ich mich an euch.
Vielen lieben Dank im Voraus.
LG
Java.beginnerHK