Creating a Christmas Tree using for loops

Atif Shah picture Atif Shah · Jun 9, 2015 · Viewed 51.4k times · Source

I am trying to make a christmas tree using for loops and nested for loops. For me to do that I need to be able to make a pyramids with *. I have tried countless times and I am having problems making one. Here is my code:

for(int i=1;i<=10;i++){
    for(int j=10;j>i;j--){
        System.out.println(" ");   
    }

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

    for(int l=10;l<=1;l++){
        for(int h=1;h<=10;h++){
            System.out.print(" ");
        }
    }

    System.out.println();  
}

What I am trying to do is:

     *
    ***
   *****
  *******

Answer

Sourav Kanta picture Sourav Kanta · Jun 9, 2015

Try this much simpler code:

public class ChristmasTree {

 public static void main(String[] args) {

  for (int i = 0; i < 10; i++) {
   for (int j = 0; j < 10 - i; j++)
    System.out.print(" ");
   for (int k = 0; k < (2 * i + 1); k++)
    System.out.print("*");
   System.out.println();
  }
 }
}

It uses 3 loops:

  • first one for the number of rows,
  • second one for printing the spaces,
  • third one for printing the asterisks.