jeongyj 2023. 6. 5. 23:36

문제


N이 주어질 때, 다음과 같은 프로그램을 작성해보자.  

입력


첫째 줄에 자연수 N이 주어진다.(1<=N<=100)

 

출력


예시를 참고하여 작성하자.

 

예제 입력

 
3

예제 출력

예제 입력

 
5

예제 출력

 

 

 

import java.util.Scanner;
public class Main{
    public static void main(String[] args){

       // Please Enter Your Code Here
       
       Scanner sc = new Scanner(System.in);
       
       int a = sc.nextInt();
       int floor=0;
       int beforeNum =1;
       int beforefloor =1;
      
      for(int i=1;i<=a;i++){// 해당 층수로 출력
          floor++;
          // 이전 층 시작 수 저장
          beforefloor =beforeNum ;
        for(int j=floor;j<=a;j++){// 층수당 수의 갯수
          System.out.print(beforeNum + " ");
          //수는 진행될수록 +1씩 더 더해짐
          beforeNum +=j;
        }
        
        //한층이 끝나면 줄바꿈 + 2번째 시작 수 잡아줌
      System.out.println();
      // 2번째 시작수는 이전층 시작수에 +층수
      beforeNum =beforefloor+floor+1;
      }
    }
}