C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#を使ってバイナリトライアングル(0と1の三角形)を出力する方法

バイナリトライアングル(二進三角形)とは、01だけで構成された三角形のパターンのことです。これを作成するには、ネストしたforループ(二重ループ)を活用し、入力された行数に達するまで0と1を交互に出力していきます。

ロジックのポイント

出力の切り替えには、フラグ変数 a を使用します。a の値が「1」のときは「0」を表示して a を「0」に更新し、逆に a の値が「0」のときは「1」を表示して a を「1」に更新します。この処理を繰り返すことで、0と1が交互に並ぶパターンが生まれます。

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

    for (int 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");
}

上記のコードでは、外側のforループが行数を管理し、内側のforループがその行に表示する文字数を制御しています。行番号 i ごとに j を1から i まで回すことで、1行目に1文字、2行目に2文字というように、段々と増えていく三角形の形になります。各行の出力後には改行コード \n を出力して次の行へ移ります。

実行結果

たとえば行数 n を7に設定して実行すると、次のようなバイナリトライアングルがコンソールに表示されます。

1
01
010
1010
10101
010101
0101010

完全なサンプルコード

以下は、C#でバイナリトライアングルを表示するプログラムの全体像です。

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();
        }
    }
}

コードの解説

  • int a = 0, n = 7;: フラグ変数 a の初期値を0に設定し、出力する行数 n を7としています。
  • 外側のループ for (int i = 1; i <= n; i++):行数(1行目〜7行目)を制御します。
  • 内側のループ for (j = 1; j <= i; j++):各行に出力する文字数を制御します。i行目にはi個の数字が出力されます。
  • Console.ReadLine();:コンソール画面がすぐに閉じないよう、ユーザーの入力待ち状態にします。

このように、シンプルな二重ループと条件分岐を組み合わせるだけで、0と1が交互に並ぶ美しいバイナリトライアングルを簡単に出力できます。行数 n の値を変更すれば、任意のサイズの三角形を表示することも可能です。

  1. MacBookで印刷する方法|USB・Wi-Fi接続の手順と印刷設定をわかりやすく解説

    MacBookでの印刷はとても簡単です。プリンターをUSBまたはWi-Fiで接続し、ほとんどのアプリで「command + P」を押すだけで印刷できます。 筆者は2019年製MacBook Proのユーザーであり、Macの専門家として、Wi-Fi経由でもUSB接続でも日常的に印刷を行っています。このガイドでは、その具体的な手順をわかりやすくご紹介します。それでは始めましょう。 MacBookで印刷する基本手順 MacBookからの印刷はシンプルで、それほど時間もかかりません。まずは、プリンターをMacBookに接続してセットアップする必要があります(おすすめのMac対応プリンターについて

  2. Googleドキュメントで封筒に宛名印刷する方法|Mail Mergeアドオンの使い方を解説

    デジタル化が年々進む現代においても、郵便物は依然として重要なコミュニケーション手段です。特にビジネスシーンでは、封筒への宛名印刷を効率化できれば、作業時間を大幅に削減できます。Google Workspace(旧G Suite)には、封筒作成をスムーズに行うための便利なツールやアドオンが多数用意されています。必要なものはプリンター、WindowsまたはMacのパソコン、Google Chromeなどのブラウザだけ。スマートフォンならiOS・Androidアプリでも同様の操作が可能です。この記事では、Googleドキュメントを使って封筒に印刷する手順を詳しく解説します。Googleドキュメントで