Javaで下向き三角形の星形パターンを出力する方法を解説
本記事では、Javaを使用して下向きの三角形の星形パターン(*)を出力する方法を解説します。このパターンは、複数のforループと出力文を組み合わせることで描画できます。ネストされたループの基本的な使い方を学びたい初心者の方に最適な題材です。
実行例
入力
行数として「8」が入力された場合を想定します。
Enter the number of rows : 8
出力
プログラムを実行すると、以下のような下向きの三角形パターンが出力されます。
The downward triangle star pattern :
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
アルゴリズムの手順
- 開始 — 処理を開始します。
- 変数の宣言 — 整数型の変数 i、j、k、my_input を宣言します。
- 値の取得 — ユーザーから行数を読み込むか、あらかじめ値を定義します。
- 空白の出力 — 外側のforループと内側のforループをネストさせて反復処理を行い、文字間の空白を出力します。
- 星の出力 — 最も内側のループの反復が終わった後、別のforループで必要な文字(*)を出力します。
- 改行 — 各行ごとに改行を出力し、次の行へ移動します。
- 結果の表示 — 完成したパターンを表示します。
- 終了 — 処理を終了します。
例1:ユーザー入力を受け付ける場合
この例では、Scannerクラスを使ってユーザーから行数を入力として受け取ります。
import java.util.Scanner;
public class DownwardTriangle{
public static void main(String args[]){
int i, j, k, my_input;
System.out.println("Required packages have been imported");
Scanner my_scanner = new Scanner(System.in);
System.out.println("A reader object has been defined ");
System.out.print("Enter the number of my_input : ");
my_input = my_scanner.nextInt();
System.out.println("The downward triangle star pattern : ");
for ( i= 0; i<= my_input-1; i++){
for ( j=0; j<=i; j++){
System.out.print(" ");
}
for ( k=0; k<=my_input-1-i; k++){
System.out.print("*" + " ");
}
System.out.println();
}
}
}
出力結果
Required packages have been imported
A reader object has been defined
Enter the number of my_input : 8
The downward triangle star pattern :
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
例2:値を事前に定義しておく場合
この例では、整数値があらかじめ定義されており、その値を参照してコンソールに出力します。動作確認やテストの際に便利な方法です。
public class DownwardTriangle{
public static void main(String args[]){
int i, j, k, my_input;
my_input = 8;
System.out.println("The number of rows is defined as " +my_input);
System.out.println("The downward triangle star pattern : ");
for ( i= 0; i<= my_input-1; i++){
for ( j=0; j<=i; j++){
System.out.print(" ");
}
for ( k=0; k<=my_input-1-i; k++){
System.out.print("*" + " ");
}
System.out.println();
}
}
}
出力結果
The number of rows is defined as 8
The downward triangle star pattern :
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
コードのポイント
- 外側のループ(変数 i):行数を制御します。各行の先頭に出力する空白の数は i に依存します。
- 最初の内側のループ(変数 j):左側のインデント用の空白を出力します。行が進むごとに空白が1つずつ増えます。
- 2番目の内側のループ(変数 k):星(*)とスペースを出力します。行が進むごとに星の数が1つずつ減り、下向きの三角形が形成されます。
このように、ループの回数を工夫することで、さまざまな形状のパターン出力に応用できます。ぜひ行数を変更して、独自のパターン作成にも挑戦してみてください。
-
指定した整数の正方形パターンを出力するJavaプログラム
指定された整数に基づいて正方形パターンを出力したい場合、以下のようなJavaコードを実装できます。 サンプルコード import java.util.*; import java.lang.*; public class Demo{ public static void main(String[] args){ Scanner my_scan = new Scanner(System.in); System.out.println(Enter a range); int my_num = my_scan.nextInt();
-
Pythonで逆三角形の星形パターン(*)を出力するプログラム
Pythonで星(アスタリスク)のパターンを逆順、つまり逆三角形の形に出力したい場合、「for」ループを使用するのが最もシンプルな方法です。forループを使えば、指定した範囲の数値を順番に繰り返し処理しながら、必要な文字を必要な回数だけ出力できます。ポイントは、ループが1回回るごとにカウント値を減算していくことです。以下に具体的な実装例を示します。サンプルコードN=6 print(変数Nを + str(N) + に初期化しました) print(逆順の星形パターンを表示します) for i in range(N, 0, -1): print((N-i) * + i * *)実行結果変