- •Реализация алгоритмов в системе программирования 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 |

