Вычисление логарифма с использованием класса

Для вычисления логарифмов можно воспользоваться известным разложением функции в ряд:
$$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;}

Оставить комментарий

Вы должны быть авторизованы , чтобы оставить или оценить комментарий.

Онлайн всего: 2
Гостей: 1
Пользователей: 1

STUDLAB Сообщить про опечатку на сайте