C言語で株の利益を計算する時ある程度の誤差がでます。
そこでより高い精度で計算するためにプログラムのfloatをdoubleに変えて計算してみました。
float型で表現できるのは、±10-38~1038の範囲で、有効桁は7桁です。
double型では、±10-308~10308の範囲で、有効桁は15桁です。
/* while 文を使って株の利益を計算するプログラムを作ってみた。DAYトレーディングで1日に合計金額の1%の利益があるものとして100万円の元金が464営業日目に1億円を上回るとゆう計算結果が出た。*/
#include <stdio.h>
int main(void)
{
int day=1;
double money=100.0;
while (money<10000.0) {
printf("%d日目の合計=%f万円\n",day,money);
day++;
money=(double)1.01*money;
}
return 0;
}
/* このプログラムを実行すると463日目に合計金額が約9919万1552円になることが判る。 */
計算結果は次の様になります。