この記事では、C言語を使ってひし形を作成するプログラムの書き方を解説します。
プログラミング初心者の方でも、基本的な考え方や手順を理解し、具体的なコードを見ながら学ぶことができます。
ひし形の作成方法を知りたい方は、ぜひ読んでみてください。
ひし形を作成するための基本的な考え方
ひし形を作成するための基本的な考え方は、以下の通りです。
ユーザーからの入力を受け取る
プログラム実行時に、ユーザーにひし形のサイズを入力してもらいます。
入力された値を元にひし形のサイズを計算する
入力された値を基に、ひし形の上半分と下半分の行数を計算します。
上半分のひし形を作成する
上半分のひし形は、行数が1から中央行まで増えるパターンです。
各行ごとに適切な数のスペースとアスタリスクを出力します。
下半分のひし形を作成する
下半分のひし形は、上半分のひし形と逆のパターンです。
行数が中央行から入力された値まで減少するように、スペースとアスタリスクを出力します。
この基本的な考え方に従って、ひし形を作成するプログラムを実装していきましょう。
プログラムの作成手順
プログラムを作成する際の基本的な手順を説明します。
ユーザーからの入力を受け取る
まず、ユーザーからひし形のサイズを入力してもらいます。
これには、C言語の標準入力関数を使用します。
具体的には、scanf関数
を使ってユーザーからの入力を受け取ります。
int size;
printf("ひし形のサイズを入力してください: ");
scanf("%d", &size);
入力された値を元にひし形のサイズを計算する
次に、ユーザーから受け取った値を元に、ひし形のサイズを計算します。
ひし形のサイズは、上半分と下半分で共通のルールに従っています。
具体的には、入力された値を2で割った値に1を足すことで、ひし形のサイズを求めることができます。
int diamondSize = (size / 2) + 1;
上半分のひし形を作成する
上半分のひし形を作成するためには、2つのループを使用します。
外側のループは行数を表し、内側のループは各行における列数を表します。
具体的には、以下のようなコードを使用します。
for (int i = 1; i <= diamondSize; i++) {
for (int j = 1; j <= diamondSize - i; j++) {
printf(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
printf("*");
}
printf("\n");
}
下半分のひし形を作成する
下半分のひし形を作成するためにも、2つのループを使用します。
外側のループは行数を表し、内側のループは各行における列数を表します。
ただし、下半分のひし形では、行数が減少するため、外側のループの初期値と条件を変更する必要があります。
具体的には、以下のようなコードを使用します。
for (int i = diamondSize - 1; i >= 1; i--) {
for (int j = 1; j <= diamondSize - i; j++) {
printf(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
printf("*");
}
printf("\n");
}
以上が、ひし形を作成するための基本的な手順です。
これらの手順を組み合わせることで、C言語でひし形を作成するプログラムを作成することができます。
※ひし形の作成手順については、上半分と下半分で共通のルールを使用しています。
上半分では行数が増加し、下半分では行数が減少することに注意してください。
また、各行における列数は、行数に応じて増加または減少することにも注意してください。