Как компьютер считает площадь фигуры и длину кривой. 10 класс, углублённый уровень — занятие пятнадцатое.
Уроки 29–30 поурочного плана: «Использование дискретизации в вычислительных задачах» и практическая работа «Приближённое вычисление длин кривых и площадей фигур». Сегодня разрежем отрезок на части, кривую — на звенья, круг — на клетки и посчитаем по ним площадь под параболой, длину параболы и почти число π.
Площадь под графиком y = x² на [0; 2] — это бесконечно много вертикальных отрезков. Длина параболы — бесконечно много крошечных кусочков. Перебрать бесконечное компьютер не может.
Зато он быстро посчитает тысячу простых кусков: прямоугольников, отрезков, клеток — и сложит их.
Дискретизация — замена непрерывного (отрезка, кривой, фигуры) конечным набором частей или точек. Считаем по частям — получаем приближённый ответ.
Шаг h = (2 − 0) / 4 = 0.5. Части: [0; 0.5], [0.5; 1], [1; 1.5], [1.5; 2].
Программа печатает середины частей: ,
,
,
.
Левый конец части i — a + i·h, правый — a + (i + 1)·h, середина — a + i·h + h / 2.
Фигуру под графиком режем на n полосок шириной h. Каждую заменяем прямоугольником высотой f(x): площадь полоски ≈ f(x) · h.
y = x² на [0; 2], n = 4, середины: (0.0625 + 0.5625 + 1.5625 + 3.0625) · 0.5 =
.
| n | левые | средние | правые |
|---|---|---|---|
| 4 | 1.750 | 2.625 | 3.750 |
| 100 | 2.627 | 2.667 | 2.707 |
| 1000 | 2.663 | 2.667 | 2.671 |
Верх полоски — не горизонталь, а хорда от f(x) до f(x + h). Площадь трапеции — полусумма оснований на высоту.
y = x² на [0; 2], n = 4: .
Если график — прямая, трапеция совпадает с полоской под ним: ответ точный при любом n.
Кривую заменяем ломаной с вершинами на графике. Звено — гипотенуза прямоугольного треугольника с катетами Δx и Δy.
y = x² на [0; 2]: одно звено — 4.472, два — 4.576, четыре — 4.627, тысяча — 4.647.
Отрезок — кратчайший путь, поэтому ломаная не длиннее кривой. С ростом n она прилегает плотнее, и длина растёт к настоящей.
Круг накрываем сеткой клеток со стороной h и считаем клетки, у которых центр в круге. Площадь ≈ число клеток × h².
Круг радиуса 1: h = 1 — 4.0 (квадрат из четырёх клеток), h = 0.5 — 3.0, h = 0.1 — 3.16, h = 0.02 — 3.144. А πR² = 3.14159…
Клетка со стороной h — это h² квадратных единиц. Без умножения на h² получится число клеток, а не площадь.
Удваиваем n, пока шаг больше 0.1: шаги 3, 1.5, 0.75, 0.375, 0.1875, 0.09375 — стоп.
Программа печатает .
Шаг (b − a) / n уменьшается вместе с ростом n. Цикл останавливается на первом n, где шаг уже не больше E.
Отметка: три задания — «5», два — «4», одно — «3». Все три файла — в одну новую папку.
Сначала тренажёр, потом три программы.
Домашнее задание — на странице «Домашнее задание»: шесть типов задач — площадь прямоугольниками и трапециями на бумаге, длина ломаной, клетки, данные, на которых врёт программа, вопросы про дискретизацию; Python дома не нужен. Исправленное после подсказки в отметку не идёт — вместо него новая задача, добирать можно до пятёрки. В начале следующей пары — проверочная по этим же типам.