Java 응용 | 통곡의 벽 피라미드

Dalyume·2026년 7월 23일

Java 응용

목록 보기
3/15
post-thumbnail

Java를 처음 배우고 반복문을 처음 접했을 때, 누구나 경험하는 통곡의 벽. * 피라미드다.

처음 했을 때에는 이해하려고 별의 별 고생을 다 했으나..하다보면 익숙해지는게 사람인가보다.

package ch06;

public class ForTest2 {
    public static void main(String[] args) {

        int n = 10;

        System.out.println("왼쪽 벽 피라미드");

        for(int i = 1; i < n; i += 2){
            for (int j = 0; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println();
        System.out.println("==================================");
        System.out.println("오른쪽 벽 피라미드");

        for(int i = 1; i < n; i += 2){
            for(int j = n; j > 1 + i; j--){
                System.out.print(" ");
            }
            for(int j = 0; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println();
        System.out.println("==================================");
        System.out.println("피라미드");

        for(int i = 1; i < n; i += 2){
            for(int j = n; j > 1 + i; j-=2){
                System.out.print(" ");
            }
            for(int j = 0; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println();
        System.out.println("==================================");
        System.out.println("왼쪽 벽 역 피라미드");

        for(int i = n; i > 1; i -= 2){
            for (int j = 1; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println();
        System.out.println("==================================");
        System.out.println("오른쪽 벽 역 피라미드");

        for(int i = n; i > 1; i -= 2){
            for(int j = 0; j < n - i; j++){
                System.out.print(" ");
            }
            for (int j = 1; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println();
        System.out.println("==================================");
        System.out.println("역 피라미드");

        for(int i = n; i > 1; i -= 2){
            for(int j = 0; j < n - i; j+=2){
                System.out.print(" ");
            }
            for (int j = 1; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }

        System.out.println();
        System.out.println("==================================");
        System.out.println("마름모");

        for(int i = 1; i < n; i += 2){
            for(int j = n; j > 1 + i; j-=2){
                System.out.print(" ");
            }
            for(int j = 0; j < i; j++){
                System.out.print("*");
            }
            System.out.println();
        }
        for(int i = n; i > 1; i -= 2){
            for(int j = 0; j < n - i + 1; j+=2){
                System.out.print(" ");
            }
            for (int j = 1; j < i-2; j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }

}

계속하다 보니까 재미 들려서 마름모까지 구현해버렸다.
...로직 설명까지는 못 하겠다. 몸이 기억하는거라서

profile
신생아 개발자

0개의 댓글