반응형
https://www.codetree.ai/missions/4/problems/print-star-5/description
코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for (int i = n; i >= 1; i--) { // n부터 1까지 반복
for (int j = 0; j < i; j++) {
for (int k = 0; k < i; k++) {
System.out.print("*"); // 별 출력
}
if (j < i - 1) {
System.out.print(" "); // 각 패턴 사이의 공백 출력
}
}
System.out.println(); // 줄 바꿈
}
sc.close();
}
}
설명
for (int i = n; i >= 1; i--) {
- 이 반복문은 n부터 1까지 역순으로 반복합니다.
- i는 현재 줄에서 출력할 별의 개수와 반복 패턴의 수를 결정합니다.
- 예를 들어, n=4라면 첫 번째 줄에서는 4개의 패턴이 있고, 각 패턴에 4개의 별이 있습니다.
for (int j = 0; j < i; j++) {
- 이 반복문은 각 줄에서 몇 개의 패턴이 반복될지 결정합니다.
- i가 4일 때는 4개의 패턴이 출력되며, i가 3일 때는 3개의 패턴이 출력됩니다.
for (int k = 0; k < i; k++) {
System.out.print("*");
}
- 이 반복문은 각 패턴에서 몇 개의 *가 출력될지를 결정합니다.
- i가 4이면 ****, i가 3이면 ***가 출력됩니다.
if (j < i - 1) {
System.out.print(" ");
}
- 패턴과 패턴 사이에 공백을 추가합니다.
- j < i - 1 조건을 통해 마지막 패턴 뒤에는 공백이 출력되지 않도록 합니다.
- 예를 들어, i가 4일 때 **** **** **** ****로 출력되어야 하므로, 공백은 3개만 추가됩니다.
System.out.println();
- 각 줄의 출력이 끝나면 다음 줄로 넘어갑니다.
- 이 줄 바꿈이 없으면 모든 별이 한 줄에 연속으로 출력됩니다.
반응형
'알고리즘 > 코드트리' 카테고리의 다른 글
[코드트리 조별과제] 5주차 정리 (0) | 2024.08.18 |
---|---|
[코드트리 조별과제] 4주차 정리 (0) | 2024.08.13 |
[코드트리][Java] break문 - 1까지 나누기 (0) | 2024.08.08 |
[코드트리 조별과제] 3주차 정리 (0) | 2024.08.04 |
[코드트리][Java] 반복문 안의 if - 369 게임 (0) | 2024.08.03 |