Пояснення програми C++ для обчислення ln(x)

1. Підключення бібліотек

#include <iostream>

Підключає стандартну бібліотеку введення і виведення.

#include <cmath>

Підключає математичну бібліотеку.

2. Простір імен

using namespace std;

У C++ багато функцій знаходяться у просторі імен std.

Без цього рядка потрібно писати:

std::cout
std::cin

Завдяки цьому рядку можна писати коротше:

cout
cin

3. Оголошення функції

double ln_approx(double a, double eps)

Функція обчислює наближене значення логарифма.

4. Обчислення x

double x = a - 1;

Використовується формула:

ln(1 + x)

Щоб знайти ln(a):

x = a - 1

5. Перший член ряду

double term = x;

term — поточний член ряду.

Перший член ряду:

x

6. Змінна для суми

double sum = 0;

sum — змінна для накопичення суми ряду.

7. Лічильник степеня

int n = 1;

Ряд має вигляд:

x − x²/2 + x³/3 − x⁴/4 + ...

n — номер члена ряду.

8. Цикл обчислення

while (fabs(term) > eps)

Цикл працює поки модуль члена ряду більший за точність.

9. Додавання до суми

sum += term;

Це скорочений запис:

sum = sum + term;

10. Наступний член ряду

n++;
term = pow(-1, n + 1) * pow(x, n) / n;

Формула члена ряду:

(-1)^(n+1) * x^n / n

11. Повернення результату

return sum;

Функція повертає суму ряду — наближене значення ln(a).

12. Головна функція

int main()

З цієї функції починається виконання програми.

13. Ввід даних

double a, eps;

cout << "Enter a (>0): ";
cin >> a;

cout << "Enter epsilon: ";
cin >> eps;

14. Виклик функції

double result = ln_approx(a, eps);

Функція обчислює ln(a) з заданою точністю.

15. Вивід результатів

cout << "Approx ln(" << a << ") = " << result << endl;
cout << "Actual ln(" << a << ") = " << log(a) << endl;

Програма виводить:

16. Завершення програми

return 0;

Означає, що програма завершилась без помилок.

Семестр №1
Наші партнери