Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#으로 이진 삼각형(Binary Triangle) 출력하기

이진 삼각형이란?

이진 삼각형(Binary Triangle)은 0과 1만으로 구성된 삼각형 모양의 패턴입니다. 각 행마다 숫자가 하나씩 늘어나면서 0과 1이 교대로 반복되어 출력되는 것이 특징입니다.

이 패턴을 만들려면 중첩 for 루프(nested for loop)를 사용해야 합니다. 바깥쪽 루프는 행(row)을 제어하고, 안쪽 루프는 해당 행에 출력될 열(column)의 개수를 제어합니다.

핵심 로직

for (int i = 1; i <= n; i++) {

    for (j = 1; j <= i; j++) {
       if (a == 1) {
          Console.Write("0");
          a = 0;
       } else if (a == 0) {
          Console.Write("1");
          a = 1;
       }
    } Console.Write("\n");
}

동작 원리

위 코드의 핵심은 변수 a의 값을 토글(toggle)하는 방식입니다.

  • 변수 a의 값이 1이면 "0"을 출력한 뒤 a를 0으로 변경합니다.
  • 변수 a의 값이 0이면 "1"을 출력한 뒤 a를 1로 변경합니다.

이렇게 하면 출력되는 숫자가 매번 0과 1 사이에서 교대로 바뀌게 됩니다. 안쪽 루프가 한 행의 출력을 마치면 Console.Write("\n")으로 줄바꿈을 하여 다음 행으로 넘어갑니다.

출력 결과

n 값(행의 개수)을 7로 설정하면 다음과 같은 이진 삼각형이 화면에 표시됩니다.

1
01
010
1010
10101
010101
0101010

전체 예제 코드

using System;
namespace Program {
    public class Demo {
       public static void Main(String[] args) {

          int j;
          int a = 0, n = 7;
          // 1부터 7까지 반복
          for (int i = 1; i <= n; i++) {
             for (j = 1; j <= i; j++) {
                if (a == 1) {
                   Console.Write("0");
                   a = 0;
                } else if (a == 0) {
                   Console.Write("1");
                   a = 1;
                }
            } Console.Write("\n");
          }
          Console.ReadLine();
       }
    }
}

정리

이진 삼각형은 중첩 루프와 단순한 조건문만으로도 쉽게 구현할 수 있습니다. 핵심은 불리언 스위치 역할을 하는 변수 a를 이용해 0과 1을 번갈아 출력하는 것입니다. 이 패턴은 피라미드 패턴, 파스칼 삼각형 등 다른 콘솔 출력 패턴 문제를 학습할 때도 유용하게 응용할 수 있는 기초 예제입니다.