web-dev-qa-db-ja.com

forループを使用してクリスマスツリーを作成する

Forループと入れ子になったforループを使用してクリスマスツリーを作成しようとしています。そのためには、*でピラミッドを作成できる必要があります。何度も試してみましたが、作成に問題があります。これが私のコードです:

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();  
}

私がやろうとしていることは:

     *
    ***
   *****
  *******
8
Atif Shah

このはるかに単純なコードを試してください:

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();
  }
 }
}

3つのループを使用します。

  • 行数の最初の1つ、
  • スペースを印刷するための2つ目
  • 3番目はアスタリスクを印刷するためのものです。
10
Sourav Kanta

あなたは簡単なロジックでそれを行うことができます

for (int i = 0; i < 4; i++) 
            System.out.println("   *******".substring(i, 4 + 2*i));
10
Burusothman
public class Stars {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
       Scanner s=new Scanner(System.in);
       System.out.println("Enter Row/Column Value::");
        int i,j,k,n;
        n=s.nextInt();
        for(i=1; i<n; i++){
            for(j=n+(n/2); j>i; j--){
                System.out.print(" ");}
            for(k=1; k<=2*i-1; k++){
                System.out.print("*");}
            System.out.println("");
            }
         for(i=1; i<n+(n/2); i++){
            for(j=n+(n/2); j>i; j--){
                System.out.print(" ");}
            for(k=1; k<=2*i-1; k++){
                System.out.print("*");}
            System.out.println("");
        }
          for(i=1; i<n-(n/2); i++){
            for(j=n+(n/2); j>1; j--){
                System.out.print(" ");}
            for(k=n/2; k<=(n/2)+1; k++){
                System.out.print("*");}
            System.out.println("");
        }
    }
}
0
def fist(n)
 k=2*n-2
  for i in range(0,n):
   for j in range(0,k):
   k=k-1
    print(end=" ')
   for j in range(0,i+1):
    print("*",end=" ")
   print()
def second(n)
 k=2*n-2
  for i in range(0,n):
   for j in range(0,k):
   k=k-1
   print(end=" ')
   for j in range(0,i+1):
    print("*",end=" ")
   print()
def stem(m)
 k=11
  for i in range(0,5):
   for j in range(0,k):
   print(end=" ")
   for j in range(0,3):
    print("*",end=" ")
   print()
first(7)
second(7)
Steam(3)
0
Kaustubh Masram