https://www.acmicpc.net/problem/2438
https://www.acmicpc.net/problem/2439
원하는 숫자를 입력 받은 후, (i=0 →j=0), (i=1 → j=0, 1), (i=2 → j=0, 1, 2), (i=3 → j=0, 1, 2, 3), (i=4 → j=0, 1, 2, 3, 4)
⇒ j가 반복되는 만큼 *이 찍히고 j 반복문을 나올때 마다 \n 을 출력하면 예제출력과 같은 모양으로 완성!
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 = 0; i < n; i++) {
for(int j = 0; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
sc.close();
}
첫번째와 마찬가지로 숫자를 먼저 입력을 받는다. 차이점은 j가 i까지가 아니라 고정된 값 n까지라는 것. (사이즈는 고정된 상태에서 공백과 별로 채우는 것)
(i=5 → j=1, 2, 3, 4, 5) ⇒ 1,2,3,4번째 자리에는 공백을 출력, 5번째 자리에는 출력
(i=4 → j=1, 2, 3, 4, 5) ⇒ 1,2,3번째 자리 공백, 4,5번째 자리에는 출력
⇒ 이런식으로 하다보면 예제출력 모양으로 완성할 수 있다.
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--) {
for(int j = 1; j <= n; j++) {
if(j < i) {
System.out.print(" ");
}else {
System.out.print("*");
}
}
System.out.println();
}
sc.close();
}
}
이상하게 별찍기는 할 때마다 머리가 리셋되는 기분이다. 예시 모양만 보고도 바로바로 머리 속에서 코드가 그려질 정도로 열심히 연마해야겠다! 반복문의 기본 중에 기본이니까!!!!!!!!!!!!!!!(。・∀・)ノ゙