1. 별의 갯수와 줄의 갯수 상관관계 파악
2. i는 줄의 수
3. lineNum, print 를 활용
4. 공백을 담당하는 j for문 따로!
5. 축구에서 후반 70분 = 후반 35분 개념!
import java.util.Scanner;
public class star {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("출력할 줄 수를 입력하세요: ");
int lineNum = scan.nextInt();
System.out.println("==별찍기 1번==");
for (int i = 1; i <= lineNum; i++) {
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("==별찍기 2번==");
for (int i = 1; i <= lineNum; i++) {
for (int j = i; j <= lineNum; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("==별찍기 3번==");
for (int i = 1; i <= lineNum; i++) {
for (int j = lineNum - 1; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("==별찍기 4번==");
for (int i = 1; i <= lineNum; i++) {
for (int j = 1; j <= i - 1; j++) {
System.out.print(" ");
}
for (int j = i; j <= lineNum; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("==별찍기 5번==");
for (int i = 1; i <= lineNum; i++) {
for (int j = i; j <= lineNum - 1; j++) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("==별찍기 6번==");
for (int i = lineNum; i >= 1; i--) {
for (int j = i; j <= lineNum - 1; j++) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("==별찍기 7번==");
for (int i = 1; i <= 2 * lineNum - 1; i++) {
if (i <= lineNum) {
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
} else {
int newLineNum = i - lineNum;
for (int j = lineNum - 1; j >= newLineNum; j--) {
System.out.print("*");
}
}
System.out.println();
}
System.out.println("==별찍기 8번==");
for (int i = 1; i <= 2 * lineNum - 1; i++) {
if (i <= lineNum) {
for (int j = lineNum - 1; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
} else {
int newLineNum = i - lineNum;
for (int j = 1; j <= newLineNum; j++) {
System.out.print(" ");
}
for (int j = lineNum - 1; j >= newLineNum; j--) {
System.out.print("*");
}
}
System.out.println();
}
System.out.println("==별찍기 9번==");
for (int i = 1; i <= 2 * lineNum - 1; i++) {
if (i <= lineNum) {
for (int j = lineNum - 1; j >= i; j--) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
} else {
int newLineNum = i - lineNum;
for (int j = 1; j <= newLineNum; j++) {
System.out.print(" ");
}
for (int j = 2 * (lineNum) - 2 * (newLineNum) - 1; j >= 1; j--) {
System.out.print("*");
}
}
System.out.println();
}
System.out.println("==별찍기 10번==");
for (int i = 1; i <= 2 * lineNum - 1; i++) {
if (i == 1 || i == 2 * lineNum - 1) {
for (int j = 1; j <= 2 * lineNum - 1; j++) {
System.out.print("*");
}
} else if (i <= lineNum) {
int topLine = i - 1;
for (int j = 1; j <= lineNum - topLine; j++) {
System.out.print("*");
}
for (int j = 1; j <= 2 * topLine - 1; j++) {
System.out.print(" ");
}
for (int j = 1; j <= lineNum - topLine; j++) {
System.out.print("*");
}
} else {
int lowerNum = i - lineNum + 1;
for (int j = 1; j <= lowerNum; j++)
System.out.print("*");
for (int j = 1; j <= 2 * lineNum - 1 - 2 * lowerNum; j++) {
System.out.print(" ");
}
for (int j = 1; j <= lowerNum; j++) {
System.out.print("*");
}
}
System.out.println();
}
scan.close();
}
}