- •Курсова робота
- •Анотація
- •1 Короткі теоретичні відомості
- •1.1 Метод половинного ділення
- •1.2 Метод хибного положення (хорд)
- •1.3 Метод Ньютона
- •1.4 Метод січних
- •1.5 Метод простої ітерації
- •2 Алгоритми методів
- •3 Розробка програмного забезпечення
- •3.1 Вибір мови програмування
- •3.3 Структура програмного забезпечення
- •3.4 Інструкція користувачеві
- •4 Тестування програмного забезпечення
- •4.1 Тестування програми. Тест №1
- •4.2 Тестування програми. Тест №2
- •5 Аналіз отриманих результатів
- •Висновки
- •Перелік посилань
- •Додатки додаток а Схема програми
- •Додаток б Лістинг програми
1.4 Метод січних
Однією з головних проблем при застосуванні методу Ньютона є необхідність аналітичного опису похідної. Якщо це складно чи неможливо, то можна застосувати її наближену оцінку. Тоді замість методу дотичних застосовується метод січних, за яким
(1.8)
де - наближена оцінка похідної, що розглядається як січна, а не як доти-
чна, і може бути оцінена за формулою
, (1.9)
чи
(1.10)
де h — деякий невеликий крок.
Алгоритм цього методу подібний методу Ньютона, але з іншою ітераційною формулою.
Рисунок 1.3 - Метод січних
1.5 Метод простої ітерації
Цей метод можна використовувати лише якщо доведена збіжність ітераційного алгоритму. В цьому методі процес розв’язання потрібно починати з пошуку інтервалу збіжності. Умовою збіжності є те що максимальне значення І-ї похідної правої частини рівняння Х=g(x) (1) (до такого вигляду потрібно привести вихідне рівняння f(x)=0 ) повинна бути менша за 1. Якщо умова не виконується, то алгоритм не збіжний. Коли в інтервалі збіжності немає коренів, треба застосовувати інші методи або приходити до рівняння (1) через інші способи.
Похибка ж методу на n – ій ітерації обчислюється так:
Δ< (1.11)
Рисунок 1.4 - Метод простої ітерації
2 Алгоритми методів
У цьому розділі розглянуто схеми алгоритмів таких методів: Ньютона, січних та простої ітерації.
Рисунок 2.1 – Схема алгоритму методу Ньютона
Рисунок 2.2 – Схема алгоритму методу січних
Рисунок 2.3 – Схема алгоритму методу простої ітерації
3 Розробка програмного забезпечення
3.1 Вибір мови програмування
Для вирішення цієї задачі було обрано середовище програмування С++, так як воно має ряд вагомих переваг перед іншими середовищами і мовами програмування. Зокрема такими перевагами є те, що:
- не вимагає великих затрат як апаратної частини комп’ютера так і програмної;
- дозволяє досить просто реалізовувати поставлені задачі;
- є дуже візуальним і наглядним що робить його зручним інструментом в користуванні;
- ця мова є досить гнучка і дозволяє використовувати технології об’єктно-орієнтованого програмування.
Обрана мова програмування цілком підходить для розв’язання поставленого завдання.
3.2 Вхідні та вихідні дані
Вхідні дані: нелінійне рівняння: , похідна від нього, початкове наближення, де х0 (-1.68; -0,067; 2.31), допустима похибка Δ, вхідне рівняння для методу ітерації.
Вихідні дані: знайдені корені х, які задовольняють умову:
< Δ, кількість кроків для отримання розв’язку із заданою похибкою, кількість ітерацій.
3.3 Структура програмного забезпечення
Програмний продукт складається з наступних функцій:
- int main() - головна функція програми
- double findNewton(double x, double eps) - функція обрахунку методом Ньютона.
- double findSecant(double x, double eps) - функція обрахунку методом січних
- double findSimpleIteration(double x, double eps) - функція обрахунку методом простої ітерації
Схему програми наведено у додатку А, лістинг у додатку Б.