예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
첫째 줄부터 차례대로 별을 출력한다.
import java.util.*;
public class Main {
public static void main(String[] args) {
int N;
Scanner scan = new Scanner(System.in);
N = scan.nextInt();
char[] star = new char[N];
for (int i = 0; i < N; i += 2) {
star[i] = '*';
}
for (int i = 1; i < N; i += 2) {
star[i] = ' ';
}
String low1 = String.valueOf(star);
for (int i = 0; i < N - 1; i++) {
star[i] = star[i + 1];
}
if (N % 2 == 1) {
star[N - 1] = ' ';
} else {
star[N - 1] = '*';
}
String low2 = String.valueOf(star);
for (int i = 0; i < N; i++) {
System.out.println(low1 + "\n" + low2);
}
}
}
예제를 보고 코드를 어떻게 짜야되나 고민이 많이 되었다.
먼저, 문자형 배열 star를 만들어서 N에 맞는 별과 공백을 넣어주고, (low1 : 첫째 줄)
star의 첫 인덱스에 공백을 넣어준 뒤 문자열을 오른쪽으로 밀어주었다. (low2 : 둘째 줄)
그리고 N에 맞게 루프를 돌려, 번갈아가면서 출력해주었다!!
더 좋은 방법이나 궁금한 점 있으면 댓글 부탁드립니다!