はじめに
この実験では、C プログラミングを使用して台形の面積を計算する方法を学びます。この実験では、台形の 2 つの平行な辺の長さと高さを読み込み、次に以下の公式を使用して面積を計算する手順を扱います。面積 = 0.5 × (a+b) × h。プログラムはユーザーに必要な値を入力するように求め、その後、台形の面積を計算して表示します。
この実験では、C プログラミングを使用して台形の面積を計算する方法を学びます。この実験では、台形の 2 つの平行な辺の長さと高さを読み込み、次に以下の公式を使用して面積を計算する手順を扱います。面積 = 0.5 × (a+b) × h。プログラムはユーザーに必要な値を入力するように求め、その後、台形の面積を計算して表示します。
このステップでは、C プログラミングで台形の面積を計算する準備として、台形の 2 つの平行辺の長さと高さを読み込む方法を学びます。
まず、台形の面積計算のための新しい C ファイルを作成しましょう。
cd ~/project
nano trapezoid_area.c
次に、平行辺の長さと高さを読み込むための以下のコードを追加します。
#include <stdio.h>
int main() {
float side1, side2, height;
// 1 つ目の平行辺の長さを入力するよう促す
printf("1 つ目の平行辺の長さを入力してください:");
scanf("%f", &side1);
// 2 つ目の平行辺の長さを入力するよう促す
printf("2 つ目の平行辺の長さを入力してください:");
scanf("%f", &side2);
// 高さを入力するよう促す
printf("台形の高さを入力してください:");
scanf("%f", &height);
// 入力値を確認するために表示する
printf("1 つ目の辺:%.2f\n", side1);
printf("2 つ目の辺:%.2f\n", side2);
printf("高さ:%.2f\n", height);
return 0;
}
プログラムをコンパイルして実行します。
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
実行例:
1つ目の平行辺の長さを入力してください: 5
2つ目の平行辺の長さを入力してください: 7
台形の高さを入力してください: 3
1つ目の辺: 5.00
2つ目の辺: 7.00
高さ: 3.00
float を使用しています。printf() を使用して、ユーザーに入力を促しています。scanf() を使用して、ユーザーが入力した浮動小数点数を取得しています。このステップでは、公式:面積 = 0.5 × (a+b) × h を使って台形の面積を計算する C プログラムを修正します。
既存のファイルを開いてコードを更新します。
cd ~/project
nano trapezoid_area.c
以前のコードを以下の実装に置き換えます。
#include <stdio.h>
int main() {
float side1, side2, height, area;
// 1 つ目の平行辺の長さを入力するよう促す
printf("1 つ目の平行辺の長さを入力してください:");
scanf("%f", &side1);
// 2 つ目の平行辺の長さを入力するよう促す
printf("2 つ目の平行辺の長さを入力してください:");
scanf("%f", &side2);
// 高さを入力するよう促す
printf("台形の高さを入力してください:");
scanf("%f", &height);
// 台形面積の公式を使って面積を計算する
area = 0.5 * (side1 + side2) * height;
// 計算された面積を表示する
printf("台形の面積:%.2f\n", area);
return 0;
}
プログラムをコンパイルして実行します。
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
実行例:
1つ目の平行辺の長さを入力してください: 5
2つ目の平行辺の長さを入力してください: 7
台形の高さを入力してください: 3
台形の面積: 18.00
area を追加しました。0.5 * (side1 + side2) * height は台形の面積を計算します。printf() は小数点以下 2 桁で計算された面積を表示します。このステップでは、ユーザーエクスペリエンスを向上させるために、書式設定された出力とエラー処理を追加して、台形面積計算プログラムを強化します。
既存のファイルを開いてコードを更新します。
cd ~/project
nano trapezoid_area.c
以前のコードを以下の実装に置き換えます。
#include <stdio.h>
int main() {
float side1, side2, height, area;
// 入力検証
printf("台形面積計算機\n");
printf("-------------------------\n");
// 1 つ目の平行辺の長さを入力するよう促す
printf("1 つ目の平行辺の長さを入力してください:");
if (scanf("%f", &side1) != 1 || side1 <= 0) {
printf("エラー: 1 つ目の辺の入力値が無効です。\n");
return 1;
}
// 2 つ目の平行辺の長さを入力するよう促す
printf("2 つ目の平行辺の長さを入力してください:");
if (scanf("%f", &side2) != 1 || side2 <= 0) {
printf("エラー: 2 つ目の辺の入力値が無効です。\n");
return 1;
}
// 高さを入力するよう促す
printf("台形の高さを入力してください:");
if (scanf("%f", &height) != 1 || height <= 0) {
printf("エラー: 高さの入力値が無効です。\n");
return 1;
}
// 台形面積の公式を使って面積を計算する
area = 0.5 * (side1 + side2) * height;
// 結果の書式設定された出力
printf("\n台形計算結果:\n");
printf("-----------------------------\n");
printf("1 つ目の辺: %.2f\n", side1);
printf("2 つ目の辺:%.2f\n", side2);
printf("高さ: %.2f\n", height);
printf("面積: %.2f 平方単位\n", area);
return 0;
}
プログラムをコンパイルして実行します。
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
実行例:
台形面積計算機
-------------------------
1つ目の平行辺の長さを入力してください: 5
2つ目の平行辺の長さを入力してください: 7
台形の高さを入力してください: 3
台形計算結果:
-----------------------------
1つ目の辺: 5.00
2つ目の辺: 7.00
高さ: 3.00
面積: 18.00 平方単位
%.2f を使用しました。この実験では、最初に printf() と scanf() 関数を使って台形の 2 つの平行辺の長さと高さを読み取る方法を学びました。次に、公式:面積 = 0.5 × (a+b) × h (ここで、a と b は平行辺、h は高さ) を使って台形の面積を計算しました。最後に、計算された面積をコンソールに表示しました。