Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java로 왼쪽 삼각형 별 패턴 출력하기 – 반복문 기초 예제 가이드

이 글에서는 Java를 사용해 왼쪽 삼각형 별 패턴을 출력하는 방법을 알아봅니다. 이 패턴은 여러 개의 for 루프와 print 문을 조합하면 손쉽게 구현할 수 있으며, 반복문의 동작 원리를 익히기에 좋은 예제입니다.

입력 및 출력 예시

입력

사용자가 행의 개수를 8로 입력했다고 가정해 보겠습니다.

Enter the number of rows : 8

출력

그러면 다음과 같은 결과가 화면에 나타납니다.

The right triangle star pattern :
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * *

알고리즘

전체 로직은 아래 단계로 진행됩니다.

1단계 - 시작(START)
2단계 - 정수형 변수 i, j, my_input 세 개를 선언한다
3단계 - 사용자로부터 필요한 값을 입력받거나 값을 직접 정의한다
4단계 - 두 개의 중첩 'for' 루프를 반복하며 문자 사이의 공백을 처리한다
5단계 - 가장 안쪽 루프의 반복이 끝나면 또 다른 'for' 루프를 통해 필요한 문자(*)를 출력한다
6단계 - 줄바꿈을 출력해 이후 줄에도 지정된 개수의 문자가 표시되도록 한다
7단계 - 결과를 화면에 출력한다
8단계 - 종료(STOP)

동작 원리를 요약하면 다음과 같습니다. 바깥쪽 for 루프는 전체 행의 수를 제어하고, 첫 번째 내부 루프는 별을 오른쪽으로 밀어 주는 공백을 출력하며, 두 번째 내부 루프는 각 행에 별(*)을 찍습니다. 마지막으로 println() 메서드로 줄바꿈을 하면 계단 모양의 삼각형이 완성됩니다.

예제 1: 사용자 입력값 사용하기

이 예제에서는 사용자가 프롬프트에 따라 직접 행의 개수를 입력합니다. 온라인 코딩 도구에서 이 예제를 직접 실행해 볼 수도 있습니다.

import java.util.Scanner;
public class RightTriangle{
    public static void main(String args[]){
        int i, j, my_input;
        System.out.println("Required packages have been imported");
        Scanner my_scanner = new Scanner(System.in);
        System.out.println("A reader object has been defined ");
        System.out.print("Enter the number of rows : ");
        my_input = my_scanner.nextInt();
        System.out.println("The right triangle star pattern : ");
        for (i=0; i<my_input; i++){
            for (j=2*(my_input-i); j>=0; j--){
                System.out.print(" ");
            }
            for (j=0; j<=i; j++ ){
                System.out.print("* ");
            }
            System.out.println();
        }
    }
}

출력

Required packages have been imported
A reader object has been defined
Enter the number of rows : 8
The right triangle star pattern :
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * *

예제 2: 미리 정의된 값 사용하기

이번에는 행의 개수가 코드에 미리 정의되어 있으며, 프로그램이 곧바로 그 값을 사용해 패턴을 출력합니다.

public class RightTriangle{
    public static void main(String args[]){
        int i, j, my_input;
        my_input = 8;
        System.out.println("The number of rows is defined as " +my_input);
        System.out.println("The right triangle star pattern : ");
        for (i=0; i<my_input; i++){
            for (j=2*(my_input-i); j>=0; j--){
                System.out.print(" ");
            }
            for (j=0; j<=i; j++ ){
                System.out.print("* ");
            }
            System.out.println();
        }
    }
}

출력

The number of rows is defined as 8
The right triangle star pattern :
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * *

이처럼 중첩 반복문만 활용하면 별도의 라이브러리 없이도 다양한 별 패턴을 출력할 수 있습니다. 같은 원리를 응용하면 피라미드, 역삼각형, 다이아몬드 패턴 등도 쉽게 구현할 수 있으니 여러 형태로 변형해 보시길 권합니다.