問題
int型の変数nを作成し、一辺がn個の右下直角の三角形を表示するプログラムを作成せよ
例) nが4の場合
実行結果
解答
public static void main(String[] args) {
int n = 4;
for (int i = 1; i <= n; i++) {
dispCircle(i, n);
System.out.println();
}
}
static void dispCircle(int i, int n) {
for (int j = n; j >= 1; j--) {
if (i < j) {
System.out.print(" ");
} else {
System.out.print("●");
}
}
}
解説
dispCircle
メソッドのfor
文でj
を減算することで空白の出力回数を
1行ごとに減らしています。
dispCircle
に渡すint i
は●の数なのでj
がi
と同じ値になるまで空白を出力するというイメージを持つと
理解しやすいです。
感想
この問題で一通りピラミッドを出力するシリーズは終了したのですが、エンジニアになって1年で
まだこの問題解くのがやっとレベルなのが大変焦りです。