Пояснення програми C++ для обчислення arctan(x) через ряд Тейлора
1. Підключення бібліотек
#include <iostream>
#include <iomanip>
#include <cmath>
- #include <iostream> – для роботи з консоллю (std::cout, std::cin)
- #include <iomanip> – для форматування чисел (std::setprecision(), std::fixed)
- #include <cmath> – для математичних функцій (std::abs() для модуля числа)
2. Функція для обчислення arctan через ряд Тейлора
double arctan_series(double x, double eps) { ... }
- Оголошуємо функцію arctan_series, яка повертає double
- x – значення, для якого обчислюємо arctan(x)
- eps – точність, до якої обчислюємо суму ряду
- term = x – перший член ряду
- sum = term – накопичуємо суму членів ряду
- n = 0 – лічильник членів ряду
while (std::abs(term) > eps) { ... } – цикл, що обчислює суму ряду до точності eps
- term *= -x*x * (2.0*n + 1)/(2.0*n + 3) – рекурентний член ряду
- Знаки чергуються (+, −, + …), x підноситься до степеня через множення, знаменник враховується через (2n+1)/(2n+3)
- sum += term – додаємо член до суми
- n++ – переходимо до наступного члена
- return sum – повертаємо наближене значення arctan(x)
3. Основна програма
int main() { ... }
- best_x – змінна для зберігання x, яке дає π найближче до 3.14
- best_pi_diff – мінімальна різниця між 4*arctan(x) і 3.14
- eps – точність для ряду Тейлора
4. Пошук x, що дає π ≈ 3.14
for(double x = 0.5; x <= 0.8; x += 0.00001) { ... }
- Перебираємо x від 0.5 до 0.8 з маленьким кроком
- pi_approx = 4 * arctan_series(x, eps) – наближене π для даного x
- diff = std::abs(pi_approx - 3.14) – модуль різниці з 3.14
- Якщо diff менше за best_pi_diff, оновлюємо best_x і best_pi_diff
5. Остаточний результат
double final_pi = 4 * arctan_series(best_x, eps);
std::cout << std::fixed << std::setprecision(10);
std::cout << "Найкраще x: " << best_x << std::endl;
std::cout << "Приблизне Pi = " << final_pi << std::endl;
std::cout << "Різниця = " << std::abs(final_pi - 3.14) << std::endl;
- Форматуємо вивід: std::fixed – десятковий формат
- setprecision(10) – 10 знаків після коми
- Виводимо: x, наближене π та різницю з 3.14
6. Завершення програми
return 0;
0 означає, що програма завершилась без помилок.
7. Як працює програма загалом
- Обчислюємо arctan(x) через ряд Тейлора
- Перебираємо значення x у заданому діапазоні
- Для кожного x обчислюємо pi_approx = 4*arctan(x)
- Зберігаємо x, яке дає π максимально близько до 3.14
- Виводимо знайдене x, наближене π та різницю
Програма підбирає x, щоб 4*arctan(x) давало π ≈ 3.14 через ряд Тейлора.