2017年11月19日
log()関数の自作
<PR>



<PR>





log()関数の自作
*マクローリンの定理を用いてlog()関数を作っています.
*オリジナルに比べると引数が2~3を超えたあたりから急激に精度が落ちます.
*精度を上げるにはlog4=2log2のように積の関係を使用する方法があります.
double my_log(double x)
{
int i;
double result, result1, result2;
x -= 1;
result1 = 0;
result2 = 0;
for(i = 1;i <= 40;i++)
{
if(i % 2 == 1)
result1 += my_pow(x, i) / i;
else
result2 += my_pow(x, i) / i;
}
return result1 - result2;
}
double my_pow(double x, int n)
{
int i;
double pow_result = 1;
if(n == 0)
return 1;
else
{
for(i = 0;i < n;i++)
{
pow_result *= x;
}
return pow_result;
}
}
<PR>


【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image
-
no image
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/6986300
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック