問題
int型の変数nを作成し、一辺がn個の直角三角形を表示するプログラムを作成せよ
例) nが4の場合
解答
public class java01 {
public static void main(String[] args) {
int n = 4;
for (int i = 0; i < n; i++) {
dispCircle(i, n);
System.out.println();
}
}
static void dispCircle(int i, int n) {
for (int j = 0; j < n; j++) {
if (i > j) {
System.out.print(" ");
} else {
System.out.print("●");
}
}
}
}
解説
1行にn個空白もしくは●、どちらを出力するかを決めているdispCircle
メソッドが肝で
main
メソッド内のループ1回目ではi = 0
のため空白は出力されず●のみが出力される。
2回目のループではi = 1
なので空白が1回出力され残り3回●を出力する。
3回目のループではi = 2
なので空白が2回出力され残り2回●を出力する。
4回目のループではi = 3
なので空白が3回出力され残り1回●を出力する。
感想
1行ごとに空白もしくは●のどちらを出力するかを決める下記の処理を思いつくことができず
模範解答を見てしまったのが悔しい。
for (int j = 0; j < n; j++) {
if (i > j) {
System.out.print(" ");
} else {
System.out.print("●");
}
}
TechProjinさんのjava練習問題は初学者の自分にはちょうどいい難易度なので
javaをやり始めた皆さんもぜひ解いてみてください。
リンクはこちら TechProjin