- •Реализация алгоритмов в системе программирования turbo pascal 7.0 Учебное пособие
- •Тема 1 Алгоритмы и способы их описания
- •Тема 2 Этапы подготовки и решения задач на эвм
- •Тема 3 Начало работы в системе Turbo Pascal 7.0
- •Начало работы с новой программой
- •Задание 1
- •Сохранение текстового файла программы на диске
- •Задание 2
- •Задание 3
- •Задание 4
- •Тема 4 Ввод исходных данных и вывод результатов вычислений
- •Упражнение 1.
- •Тема 5 Реализация линейных алгоритмов
- •Сложные выражения
- •Задание
- •Тема 6 Программирование разветвляющихся алгоритмов
- •Задание 1
- •Задание 2
- •Тема 7 Циклические алгоритмы с известным числом повторений
- •Задание
- •Тема 8 Циклические алгоритмы с неизвестным числом повторений
- •Задания
- •Задание
- •Тема 10 Работа с массивами
- •Задание
- •Задание
- •Тема 12 Записи
- •Задания
- •Тема 13 Работа с файлами
- •Задания
- •Задания
- •Тема 15 Алгоритмы построения графика аналитически заданной функции
- •Задание
- •Тема 16 Анимация изображений
- •Задание 1
- •Задание 2
- •Тема 17 Численные методы вычисления определённого интеграла
- •1. Метод прямоугольников
- •2. Метод трапеций
- •3. Метод Симпсона
- •Задания
- •Тема 18 Численные методы решения нелинейных уравнений
- •Задания
- •Тема 19 Численные методы решения обыкновенных дифференциальных уравнений
- •Задание
- •Оглавление
- •Литература
2. Метод трапеций
Сущность интегрирования методом трапеций составляет кусочно-линейная аппроксимация подынтегральной функции. Соседние точки (xi,yi) и (xi+1,yi+1), заданные таблицей в интервалеaxb, соединяются прямыми. Еслиx0=a, аxn=b, то интеграл будет представлять собой сумму площадейnтрапеций высотойhкаждая. На рис. 17.3 показан графически принцип метода трапеций.
Рис.17.3. Интегрирование методом трапеций
Расчётная формула получается следующим образом
Итоговая формула выглядит следующим образом
Таким образом, для вычисления определённого интеграла методом трапеций надо вычислить сумму значений подынтегральной функции в узлах интегрирования между aиbи умножить эту сумму на шаг интегрирования. К полученному значению прибавляется полусумма значений подынтегральной функции на концах отрезка, умноженная на шаг интегрирования. Совершенно очевидно, что чем меньше интервал, через которые задаётся значение функции, тем с большей точностью будет вычислен определённый интеграл.
3. Метод Симпсона
Повысить точность результат вычисления определённого интеграла можно, если заменить линейную аппроксимацию, используемую в методе трапеций, кусочной аппроксимацией кривыми, например, параболой второго порядка. Для проведения каждой параболы требуется три точки. Аппроксимируя подынтегральную функцию параболами, получаем формулу Симпсона:
, или
.
В этой формуле число интервалов должно быть чётное.
Таким образом, для вычисления определённого интеграла методом Симпсона надо вычислить отдельно суммы значений подынтегральной функции в узлах интегрирования между aиbв чётных и нечётных точках. Сумма, полученная для нечётных точек умножается на 4, а сумма для чётных точек - на 2. К полученным двум суммам прибавляется сумма значений подынтегральной функции на концах отрезка. Полученный итог умножается на 1/3 шага интегрирования.
Все вышеприведённые алгоритмы вычисления определённого интеграла используется заданный шаг интегрирования. Кроме этого, существуют итерационные алгоритмы, в которых вычисления выполняются до заданной точностирезультата. При каждой итерации количество узлов интегрированияnудваивается, а затем новый результат сравнивается с результатом, полученном на предыдущем шаге. Вычисления повторяются в цикле, пока разница между результатами не станет меньше.
Задания
1. Набрать текст программы Integral1. Провести вычисления и вывести на принтер (экран) результаты расчётов приn=10; 100; 1000; 10000. Сравнить точность и скорость вычислений.
2. Сохранить под другим именем и модифицировать программу, чтобы она вычисляла значение интеграла методом трапеций. Сравнить точность и скорость вычислений при n=10; 100; 1000; 10000.
3. Сохранить под другим именем и модифицировать программу, чтобы она вычисляла значение интеграла методом парабол. Сравнить точность и скорость вычислений при n=10; 100; 1000; 10000.
4. Сохранить под другим именем и используя три предыдущих примера модифицировать программу, чтобы она последовательно вычисляла значение интеграла методом прямоугольников, трапеций и парабол. Сравнить точность и скорость вычислений при n=10; 100; 1000; 10000. Для этого результаты должны выводиться в виде таблицы
Результаты вычисления определённого интеграла методами
n |
Прямоугольников |
Трапеций |
Парабол |
10 |
|
|
|
100 |
|
|
|
1000 |
|
|
|
10000 |
|
|
|
Варианты заданий
№ |
Интеграл |
Точное решение |
№ |
Интеграл |
Точное решение |
1. |
29,25 |
5. |
1,84147098… | ||
2. |
0,15 |
6. |
1,718281828… | ||
3. |
/4 |
7. |
14,666(6) | ||
4. |
8. |
-1 |