0

私は最近数学をいじっていますが、ベース(ルート..?)を指定できるログのC ++実装を誰かが書いたり見たりしたことがあるかどうか知りたいですか?次のように:

数学関数の定義 http://i1091.photobucket.com/albums/i383/dannydeth1/forumla.png

明らかに、基数を引数として指定することをお勧めします。 double d = log(b,x);

お時間をいただきありがとうございます。どんな回答でも大歓迎です。:}

編集:また、テイラーシリーズを使用すると思いますか?

4

2 に答える 2

17

log_b_(x)= log(x)/ log(b)。これを行うだけです:

double log(double base, double x)
{
    return std::log(x) / std::log(base);
}
于 2011-11-30T11:54:50.007 に答える
8

自分で実装するのは簡単です:

double
logb( double n, double b )
{
    return log(n) / log(b);
}

それは一般的に有用ですか?それとも、実質的にすべての用途がlog、 、log10およびに含まれていlog2ますか?

于 2011-11-30T11:56:00.817 に答える