public class Main {
public void solution(int star) {
System.out.println();
}
public static void main(String[] args) {
Main method = new Main();
int star = 9;
method.solution(star);
}
}
첫째 줄에 정수 n이 주어진다. (0≤n≤100)
출력: 다음 예제와 같이 삼각형 모양으로 ‘*’을 출력하세요.(공백의 개수와 별의 개수를 정확하게 확인해주시길 바랍니다.)
3
6
9
public class Main {
public void solution(int star) {
//star 는 입력될 값 = 층 수
//바깥 for 문은 각 층 수를 나타낸다(star 가 3이면 3층, 9면 9층)
// 인덱스가 0부터 시작한다는 점을 활용하여 0으로 초기화
for (int i = 0; i < star; i++) {
//공백을 나타내기위한 for 문
//초기식이 star-1인 이유는 공백을 나타내기 위함이다
//가운데를 기준으로 찍히는 별표를 제외하고, 양 옆으로 공백을 만든다
//층수가 높아질수록 필요한 공백 수는 적어지므로, j--를 해준다.
for (int j = star - 1; i < j; j--) {
System.out.print(" ");
}
//별표를 나타내기위한 for 문
//2 * i + 1 식은 홀수 개수인 별을 나타내기 위함이다.(배열은 0부터 시작하기 때문)
for (int j = 0; j < 2 * i + 1; j++ ) {
System.out.print("*");
}
// 행을 바꿀 수 있도록 println() 을 사용
System.out.println();
}
}
public static void main(String[] args) {
Main method = new Main();
int star = 9;
method.solution(star);
}
}
총 9층이 있다면
바깥 for문으로 1층으로 오고 -> 첫번째 안쪽 for문으로 공백 8개를 만들고 -> 두번째 안쪽 for문으로 별표 1개를 만든다.
바깥 for문으로 2층으로 오고 -> 첫번째 안쪽 for문으로 공백 7개를 만들고 -> 두번째 안쪽 for문으로 별표 3개를 만든다.
.
.
.
=> 피라미드의 왼쪽부분만 공백을 만들고, 공백에 별표를 홀수 개수만큼만 배치