【C言語】アスタリスクで任意の大きさの三角形を描く方法

この記事では、C言語を使用して三角形を描画する方法を解説します。

固定サイズの三角形を描く方法から、ユーザーからの入力に基づいて三角形を描く方法、さらにはループを使用して任意の大きさの三角形を描く方法まで、初心者にもわかりやすく解説します。

目次から探す

三角形の描画方法

方法1: 固定サイズの三角形を描く

最初に紹介するのは、固定サイズの三角形を描画する方法です。

この方法では、プログラム内で三角形のサイズを指定し、そのサイズに応じた三角形を描画します。

以下に、サイズが5の三角形を描画するサンプルコードを示します。

#include <stdio.h>
int main() {
    int size = 5; // 三角形のサイズ
    for (int i = 1; i <= size; i++) {
        for (int j = 1; j <= i; j++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

上記のコードでは、2つのループを使用して三角形を描画しています。

外側のループは行数を表し、内側のループは各行におけるアスタリスクの数を表しています。

アスタリスクの後にスペースを入れることで、三角形の形を作り出しています。

実行結果は以下のようになります。

*
* *
* * *
* * * *
* * * * *

方法2: ユーザーからの入力に基づいて三角形を描く

次に紹介するのは、ユーザーからの入力に基づいて任意のサイズの三角形を描画する方法です。

この方法では、プログラム実行時にユーザーにサイズを入力してもらい、そのサイズに応じた三角形を描画します。

以下に、ユーザーからの入力に基づいて三角形を描画するサンプルコードを示します。

#include <stdio.h>
int main() {
    int size;
    printf("三角形のサイズを入力してください: ");
    scanf("%d", &size);
    for (int i = 1; i <= size; i++) {
        for (int j = 1; j <= i; j++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

上記のコードでは、scanf関数を使用してユーザーからの入力を受け取っています。

ユーザーが入力した値をsize変数に格納し、その値に応じた三角形を描画します。

実行結果は以下のようになります。

三角形のサイズを入力してください: 4
*
* *
* * *
* * * *

方法3: ループを使用して任意の大きさの三角形を描く

最後に紹介するのは、ループを使用して任意の大きさの三角形を描画する方法です。

この方法では、プログラム実行時にユーザーからの入力を受け取り、その値に応じた大きさの三角形を描画します。

以下に、ループを使用して任意の大きさの三角形を描画するサンプルコードを示します。

#include <stdio.h>
int main() {
    int size;
    printf("三角形のサイズを入力してください: ");
    scanf("%d", &size);
    for (int i = 1; i <= size; i++) {
        for (int j = 1; j <= size - i; j++) {
            printf(" ");
        }
        for (int k = 1; k <= i; k++) {
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

上記のコードでは、外側のループで行数を表し、内側のループでアスタリスクとスペースを交互に描画しています。

スペースの数は、三角形のサイズから行数を引いた値になります。

実行結果は以下のようになります。

三角形のサイズを入力してください: 6
     *
    * *
   * * *
  * * * *
 * * * * *
* * * * * *

以上が、C言語を使用して任意の大きさの三角形を描画する方法の解説です。

方法1では固定サイズの三角形を描画し、方法2ではユーザーからの入力に基づいて三角形を描画し、方法3ではループを使用して任意の大きさの三角形を描画しました。

これらの方法を参考にして、自分なりの三角形の描画プログラムを作成してみてください。

目次から探す