백준

백준 2439번 '별찍기 -2' (JAVA)

ho코딩 2024. 1. 7. 01:29

2438번과 같은 별찍기 이지만 왼쪽 정렬이 아닌 오른쪽 정렬 문제입니다. 

 

import java.util.Scanner;

public class Main {
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);

int a = scan.nextInt();

for (int i = 1; i <= a; i++) {
   for (int k =0; k<a-i;k++){ // 입력받은 숫자 - i 만큼 공백
       System.out.print(" ");
    } 

   for (int j = 1; j <= i; j++) { // 입력받은 숫자만큼 * 생성
      System.out.print("*");
    }
  System.out.println("");
     }
  }
}

 

2438번과 비슷하지만 오른쪽 정렬을 하기 위해서 (입력받은 값)-(각 줄에 나타나는 별의 수)의 값을 공백으로 출력합니다.

 

첫번째 반복문은 2438번과 같이 몇 줄을 생성할건지에 대한 반복문 입니다 .

두번째 반복문은 오른쪽 정렬을 위한 공백 출력 반복문 입니다. 

  만약, 5를 입력받았다면 첫번째 줄에서는 5-1개의 공백 . 1개의 *이 출력되어야하고

  두번째 줄에서는 5-2개의 공백, 2개의 *이 출력되어야합니다. 

 

때문에 변수 k를 생성하고, a(입력받은수)-i(현재 반복회수)를 빼서 공백을 출력합니다 (print문 사용) 

 

마지막 반복문은 *을 생성하는 반복문입니다.  

 

 

'백준' 카테고리의 다른 글

백준 9498번 '시험 성적' (JAVA 11)  (1) 2024.01.07
백준 2753번 '윤년' (JAVA 11)  (0) 2024.01.07
백준 2438번 '별찍기' (JAVA)  (0) 2024.01.07
백준 3052번 '나머지' (JAVA 11)  (0) 2024.01.07
백준 2741번 'N 찍기' (JAVA 11)  (0) 2024.01.07