はじめに
元本、利率、期間の読み込み
このステップでは、C プログラムで複利計算を行う際に、元本、利率、期間を読み込む方法を学びます。これらの財務パラメータのユーザー入力を取得するシンプルなプログラムを作成します。
まず、プロジェクトディレクトリに新しい C ファイルを作成しましょう。
cd ~/project
nano compound_interest.c
次に、入力パラメータを読み込むための以下のコードを追加します。
#include <stdio.h>
int main() {
// 元本、利率、期間の変数を宣言
float principal, rate, time;
// 元本入力を促し、読み込む
printf("元本を入力してください:");
scanf("%f", &principal);
// 利率入力を促し、読み込む
printf("年利率を入力してください(パーセントで):");
scanf("%f", &rate);
// 期間入力を促し、読み込む
printf("期間を入力してください(年):");
scanf("%f", &time);
// 入力値を出力して確認する
printf("\n入力パラメータ:\n");
printf("元本:$%.2f\n", principal);
printf("年利率:%.2f%%\n", rate);
printf("期間:%.2f 年\n", time);
return 0;
}
プログラムをコンパイルして実行します。
gcc compound_interest.c -o compound_interest
./compound_interest
実行例:
元本を入力してください: 1000
年利率を入力してください(パーセントで):5
期間を入力してください(年):3
入力パラメータ:
元本: $1000.00
年利率: 5.00%
期間: 3.00 年
説明
- 財務計算のために、小数値を格納するために
float変数を使用しています。 printf()を使用して、ユーザーにプロンプトと指示を表示しています。scanf()を使用して、元本、利率、期間のユーザー入力を読み込んでいます。%.2fの書式指定子を使用して、数値を小数点以下 2 桁で表示しています。
計算式 A = P*(1+R)^T
このステップでは、A = P * (1 + R)^T という数学的公式を用いて複利を計算する方法を学びます。ここで:
- A = 最終金額
- P = 元本
- R = 年利率(小数で)
- T = 期間(年)
前のプログラムを修正して複利計算を含めます。
cd ~/project
nano compound_interest.c
複利計算を含めたプログラムを更新します。
#include <stdio.h>
#include <math.h>
int main() {
// 元本、利率、期間、金額の変数を宣言
float principal, rate, time, amount;
// 元本入力を促し、読み込む
printf("元本を入力してください:");
scanf("%f", &principal);
// 年利率入力を促し、読み込む
printf("年利率を入力してください(パーセントで):");
scanf("%f", &rate);
// 期間入力を促し、読み込む
printf("期間を入力してください(年):");
scanf("%f", &time);
// 利率を小数に変換
rate = rate / 100;
// 複利を計算
amount = principal * pow(1 + rate, time);
// 結果を出力
printf("\n入力パラメータ:\n");
printf("元本:$%.2f\n", principal);
printf("年利率:%.2f%%\n", rate * 100);
printf("期間:%.2f 年\n", time);
printf("\n複利計算結果:\n");
printf("最終金額:$%.2f\n", amount);
printf("総利息:$%.2f\n", amount - principal);
return 0;
}
数学ライブラリを使用してプログラムをコンパイルします。
gcc compound_interest.c -o compound_interest -lm
プログラムを実行します。
./compound_interest
実行例:
元本を入力してください: 1000
年利率を入力してください(パーセントで):5
期間を入力してください(年):3
入力パラメータ:
元本: $1000.00
年利率: 5.00%
期間: 3.00 年
複利計算結果:
最終金額: $1157.63
総利息: $157.63
説明
- 指数計算を行う
pow()関数を使用するために#include <math.h>を追加しています。 rate = rate / 100でパーセントを小数に変換しています。amount = principal * pow(1 + rate, time)で最終金額を計算しています。- コンパイル時に
-lmフラグを使用して数学ライブラリをリンクしています。
最終金額の表示
この最終ステップでは、複利計算プログラムを拡張して、フォーマットされた出力を行い、財務結果の表示を改善します。
結果のフォーマットを改善するために、前のプログラムを修正します。
cd ~/project
nano compound_interest.c
出力フォーマットを強化したプログラムを更新します。
#include <stdio.h>
#include <math.h>
int main() {
// 元本、利率、期間、金額、利息の変数を宣言
float principal, rate, time, amount, interest;
// 元本入力を促し、読み込む
printf("複利計算機\n");
printf("----------------------------\n");
printf("元本を入力してください:");
scanf("%f", &principal);
// 年利率入力を促し、読み込む
printf("年利率を入力してください(パーセントで):");
scanf("%f", &rate);
// 期間入力を促し、読み込む
printf("期間を入力してください(年):");
scanf("%f", &time);
// 利率を小数に変換
rate = rate / 100;
// 複利を計算
amount = principal * pow(1 + rate, time);
interest = amount - principal;
// フォーマットされた財務結果を表示
printf("\n===== 財務計算結果 =====\n");
printf("元本: $%10.2f\n", principal);
printf("年利率: %10.2f%%\n", rate * 100);
printf("投資期間: %10.2f 年\n", time);
printf("-------------------------------------------\n");
printf("最終金額: $%10.2f\n", amount);
printf("総利息: $%10.2f\n", interest);
printf("==========================================\n");
return 0;
}
プログラムをコンパイルします。
gcc compound_interest.c -o compound_interest -lm
プログラムを実行します。
./compound_interest
実行例:
複利計算機
----------------------------
元本を入力してください: 1000
年利率を入力してください(パーセントで):5
期間を入力してください(年):3
===== 財務計算結果 =====
元本: $ 1000.00
年利率: 5.00%
投資期間: 3.00 年
-------------------------------------------
最終金額: $ 1157.63
総利息: $ 157.63
==========================================
説明
- ヘッダーと区切り線をより記述的に追加しました。
- 整列された固定幅の小数出力のために
%10.2fの書式指定子を使用しました。 - より明確な表示のために、利息を別途計算しました。
- タイトルと構造化された財務結果表示を含めました。
まとめ
この実験では、C プログラムで複利計算を行うために、元本、利率、期間を読み取る方法を学びました。ユーザーにこれらの財務パラメータを入力させ、入力値を出力して検証するシンプルなプログラムを作成しました。次に、A = P * (1 + R)^T という数学的公式を使って複利を計算する方法を学びます。ここで、A は最終金額、P は元本、R は利率、T は期間です。



