Вычисление логарифма с использованием класса
Для вычисления логарифмов можно воспользоваться известным разложением функции в ряд:
$$ln\left(1+x \right)=x-x^{2}/2+x^{3}/3-x^{4}/4+...$$
Справа бесконечная сумма, которая дает приближенное значение функции слева. Для вычисления натурального логарифма по этой формуле в программе создается специальный класс.
#include#include using namespace std; class MyLog{ public: double x; int N; double Ln(){ double s=0,q=x; int i; for(i=1; i <=N; i++){ s+=q/i; q*=-x;} return s; } }; int main(){ MyLog a; cout << "Enter x = "; cin >> a.x; cout << "Enter N = "; cin >> a.N; cout << "ln(" << 1+a.x << ") = " << a.Ln() << endl; cout << "ln(" << 1+a.x << ") = " << log(1+a.x) << endl; return 0;}