- •2. Методические указания к выполнению лабораторных работ
- •Лабораторная работа №1 Следование
- •Варианты индивидуальных заданий Выполнить поразрядные логические операции над машинными кодами
- •Пример программы
- •Лабораторная работа №2 Операторы ветвления
- •Варианты индивидуальных заданий
- •Пример разработки математической модели и схемы алгоритма решения задачи для варианта задания вида:
- •Текст программы
- •Варианты индивидуальных заданий
- •Лабораторная работа №3 Операторы цикла
- •Пример программы
- •Лабораторная работа №4 Статические массивы
- •Варианты индивидуальных заданий
- •Пример программы на обработку одномерного массива
- •Пример программы на обработку двумерного массива (матрицы)
- •Лабораторная работа №5 Динамические массивы
- •Варианты индивидуальных заданий
- •Пример программы на обработку одномерного массива
- •Пример программы на обработку двумерного массива (матрицы)
- •Лабораторная работа №6 Методы сортировки
- •Варианты индивидуальных заданий Методы сортировки
- •Области сортировки элементов матриц
- •Примеры программ
- •Лабораторная работа №7 Передача имён функций в качестве параметров
- •Текст программы
- •Лабораторная работа №8 Строки и текстовые файлы
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №9 Структуры и файлы структур
- •Пример программы
- •Лабораторная работа №10 Линейные списки
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №11 Стек, дек, очередь
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №12 Классы
- •Варианты индивидуальных заданий
- •Примеры программ
- •Литература
Лабораторная работа №7 Передача имён функций в качестве параметров
Цель лабораторной работы: изучение методов передачи имён функций в качестве параметров других функций; изучение методов нахождения значения определённых интегралов функций на заданном отрезке и с заданной точностью; совершенствование навыков процедурного программирования на языке C/С++ при решении задач с использованием рекурсивных функций.
Задание на программирование: используя технологию процедурного программирования реализовать заданный метод нахождения значения определённого интеграла произвольных функций на заданном отрезке и с заданной точностью и применить его для определения площадей областей на плоскости в соответствии с индивидуальным заданием.
Порядок выполнения работы:
1) Получить у преподавателя индивидуальное задание:
- метод нахождения значения определённого интеграла произвольной функции на заданном интервале интегрирования и с заданной точностью;
- задачу определения места нахождения точки с произвольно заданными координатами на координатной плоскости (вариант и формулировка этой задачи берётся из лабораторной работы №2).
2) Разработать математическую модель:
- привести уравнения линий, ограничивающих выделенные штриховкой области;
- описать условия попадания точки в каждую выделенную область;
- составить аналитические формулы определения площади каждой выделенной области;
- определить аналитический вид функций, графики которых совпадают с видом линий, ограничивающих выделенные штриховкой области;
- определить площадь каждой выделенной области с использованием значений определённых интегралов соответствующих функций на заданном интервале интегрирования и с заданной точностью.
3) Построить схему алгоритма решения задачи.
4) Составить программу на языке C/С++.
5) Входные данные должны вводиться с клавиатуры по запросу.
Выходные данные (сообщения) должны выводиться на экран в развернутой форме.
6) Использовать стандартные потоковые объекты ввода/вывода cin и cout.
7) Проверить и продемонстрировать преподавателю работу программы на полном наборе тестов.
8) Оформить отчет о лабораторной работе в составе: постановка задачи, математическая модель, схема алгоритма решения, текст программы, контрольные примеры.
Варианты индивидуальных заданий
Методы определения значения определённого интеграла
1. Метод левых прямоугольников.
2. Метод правых прямоугольников.
3. Метод прямоугольных трапеций.
4. Метод криволинейных трапеций.
Виды областей на координатной плоскости
См. варианты заданий для лабораторной работы №2
Пример разработки математической модели решения задачи для варианта задания вида:
Математическая модель
- условие 1 (принадлежность области М1):
(x-1)2 + y2 > 1 {вне правой окружности}
x < 2 {левее линии x = 2}
x > 1 {правее линии x = 1}
y > 0 {выше линии y = 0}
y < 2 {ниже линии y = 2}
Аналитическое выражение определения площади области М1:
площадь прямоугольника (2 * 1) – площадь четверти круга (πr2 / 4) = 2 – π / 4≈1.2146
Аналитический вид функций, подлежащих интегрированию:
{верхняя
полуокружность правой окружности}
интервал интегрирования [1, 2]
y = 2 {линия y = 2}
интервал интегрирования [1, 2]
- условие 2 (принадлежность области М2):
(x + 1)2 + y2 > 1 {вне левой окружности}
x > -2 {правее линии x = -2}
y < 1 {ниже линии y = 1}
x < -1 {левее линии x = -1}
y > 0 {выше оси x }
Аналитическое выражение определения площади области М2:
площадь квадрата (1 * 1) – площадь четверти круга (πr2 / 4) = 1 – π / 4 ≈0.2146
Аналитический вид функций, подлежащих интегрированию:
{верхняя
полуокружность левой окружности}
интервал интегрирования [-2, -1]
y = 1 {линия y = 1}
интервал интегрирования [-2, -1]
- условие 3 (принадлежность области М3):
(x + 1)2 + y2 < 1 {внутри левой окружности}
x2 + y2 < 1 {внутри центральной окружности}
y > 0 {выше оси x }
Аналитическое выражение определения площади области М3:
площадь сектора 1200 (πr2 / 3) – площадь треугольника ( / 2 * 0.5) =
π / 3 – / 2 *0.5 = π / 3 – / 4 =0.6142
Аналитический вид функций, подлежащих интегрированию:
{верхняя полуокружность левой окружности}
интервал интегрирования [-0.5, 0]
{верхняя
полуокружность центральной окружности}
интервал интегрирования [-1, -0.5]
- условие 4 (принадлежность области М4):
x2 + y2 > 1 {вне центральной окружности}
(x – 1)2 + y2 < 1 {внутри правой окружности}
x2 + (y + 1)2 > 1 {вне нижней окружности}
Аналитическое выражение определения площади области М4:
площадь квадрата (1 * 1) - четверть площади круга (πr2 / 4) – 2*(площадь прямоугольника (1 * (1 - /2)) – площадь сектора 600 (πr2 / 6) + площадь треугольника ( / 2 * 0.5)) = 1 - π / 4 – 2 * (1 - / 4 - π / 6) = / 2 + π / 3 - π / 4 – 1 ≈ 0.1278
Аналитический вид функций, подлежащих интегрированию:
{нижняя
полуокружность правой окружности}
интервал интегрирования [0.5, 1]
{нижняя
полуокружность центральной окружности}
интервал интегрирования [0.5, / 2]
{верхняя
полуокружность нижней окружности}
интервал интегрирования [ / 2, 1]
- условие 5 (принадлежность области М5):
x2 + (y+1)2 > 1 {вне нижней окружности}
y > -2 {выше линии y = -2}
y < -1 {ниже линии y = -1}
x > -1 {правее линии x = -1}
x < 0 {левее оси y}
Аналитическое выражение определения площади области М5:
площадь квадрата (1 * 1) – площадь четверти круга (πr2 / 4) = 1 – π / 4 ≈ 0.2146
Аналитический вид функций, подлежащих интегрированию:
{нижняя
полуокружность нижней окружности}
интервал интегрирования [-1, 0]
y = -2 {линия y = -2}
интервал интегрирования [-1, 0]
