for문을 이용해 삼각형 출력하기.
다이아몬드 예시와 같은 로직을 for문을 이용해서 완성했다.
int row2 = 10;
for (int i = 0; i < row2; i++) {
for (int j = 0; j < row3; j++) {
System.out.println("$");
}
for (int k = 0; k < row2-i; k++) {
System.out.println("*");
}
System.out.println();
}
|
cs |
1번째 for: 줄바꿈 수행
2번째 for: 0개의 $, 개행마다 1씩 늘어나는 $
3번째 for: 총 줄갯수만큼의 *, 개행마다 1개씩 줄어든 *
그런데 예시 해설을 봤을땐 더 간단한 방법이 있다는걸 알게 되었다.
int row3 = 10;
for (int i = 0; i < row3; i++) {
String p = "";
for (int j = 0; j < row3; j++) {
if (i <= j) {
p = p + "*";
} else {
p = p + "$";
}
}
System.out.println(p);
}
|
cs |
기존에는 $와 *을 하나씩 찍는 방법이였다면
해설에서는 문자열을 저장할 변수 하나를 선언해서 *과 $를 누적저장, 개행시 한줄씩 출력하는 방법이였다.
한줄당 *과 $의 비율은 간단한 if문(i<=j) 한줄로도 판별이 가능하다.
'Java' 카테고리의 다른 글
메인메소드의 기능들을 각 메소드별로 분리하기 (0) | 2021.10.26 |
---|---|
String이 참조하는 값 (0) | 2021.10.14 |
vscode에서 args[]값 입출력하기 (0) | 2021.10.09 |
중첩 for문을 이용하여 다이아몬드 그리기 (0) | 2021.10.06 |
개발학습일지 - 4 (0) | 2021.10.05 |