Есть ли лучший способ найти журнал любого числа без стандартной библиотеки C? - PullRequest
0 голосов
/ 16 марта 2012

Я должен создать программу, которая вычисляет журнал любого числа и журнал любого числа для любой базы без использования cmath. Мне удалось создать прототип программы с использованием метода уравнения степенных рядов, но мне также нужно создать проверку числа. Мой репетитор сказал, что если число больше 10, чтобы отделить число от его наибольшего значения 10 x и вычислить логарифм по log(x) + log(y), где x - это число от 1 до 10 и y - это число 10 x.

Я написал это для чисел до 1000, но программа, использующая cmath, делает это для 10 208 , и поэтому мне было интересно, есть ли более эффективный способ вычисления журнала?

int main()
{
    float x, n;
    cin >> n;

    if (n > 10)   x = n/10;
    if (n > 100)  x = n/100;
    if (n > 1000) x = n/1000;

    cout << x << endl;
}

1 Ответ

1 голос
/ 16 марта 2012

Знаете ли вы о серии Тейлора для log?Он прост в программировании и обеспечивает столько разрешения и диапазона, сколько необходимо.

...