C言語でユーザー入力対応のピラミッド型三角形を作成する方法

C言語関連

C言語でピラミッド型の三角形を作成するプログラムは、ループ処理や条件分岐を使うことで簡単に実現できます。ここでは、ユーザーが段数を入力し、2〜10段以外の場合にはエラーを表示する例を紹介します。

プログラムの基本構造

プログラムは、まずユーザーから段数を入力させます。入力値が2〜10の範囲内かを確認し、範囲外ならエラーメッセージを出力します。範囲内であれば、ピラミッド型の三角形を描画します。

サンプルコード

#include <stdio.h>int main() {    int n;    printf("段数を入力してください(2〜10): ");    scanf("%d", &n);    if (n < 2 || n > 10) {        printf("エラー:2から10の数字を入力してください。\n");        return 1;    }    for (int i = 1; i <= n; i++) {        // 左の空白        for (int j = 1; j <= n - i; j++) {            printf(" ");        }        // 左側の■        printf("■");        // 中間の空白        if (i > 1) {            for (int j = 1; j <= 2*(i-1)-1; j++) {                printf(" ");            }            // 右側の■            printf("■");        }        printf("\n");    }    return 0;}

実行例

ユーザーが5を入力した場合、出力は以下のようになります。

    ■   ■ ■  ■   ■ ■     ■■       ■

解説

このコードでは、まず段数を確認してエラー処理を行います。段ごとのループ内で左側の空白を表示し、その後左の■を出力します。段数が2以上の場合は、中央の空白を表示して右の■を出力しています。これにより、ピラミッド型の三角形が完成します。

まとめ

この方法を応用すれば、段数を可変にしたり、他の文字や記号でピラミッドを描画することも可能です。C言語のループと条件分岐の練習としても最適です。

コメント

タイトルとURLをコピーしました