КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Ветвление
Цель лабораторной работы: приобретение навыков структурного программирования на языке C/С++ при решении задач с использованием операторов ветвления if и switch.
Задание на программирование: используя технологию структурного программирования разработать программу для решения индивидуальной задачи определения места нахождения на плоскости точки с произвольно заданными координатами. В случае если точка попадает в одну их выделенных областей, программа должна определять площадь этой области. При решении должны быть использованы условный оператор if и оператор-переключатель switch.
Порядок выполнения работы:
1) Получить у преподавателя индивидуальное задание и выполнить постановку задачи: сформулировать условие, определить входные и выходные данные. 2) Разработать математическую модель: - привести уравнения линий, ограничивающих выделенные штриховкой области; - описать условия попадания точки в каждую выделенную область; - составить уравнения определения площади каждой выделенной области. 3) Построить схему алгоритма решения задачи. 4) Составить программу на языке C/С++. 5) Входные данные должны вводиться с клавиатуры по запросу. Выходные данные (сообщения) должны выводиться на экран в развернутой форме. 6) Использовать стандартные потоковые объекты ввода/вывода cin и cout. 7) Проверить и продемонстрировать преподавателю работу программы на полном наборе тестов. 8) Оформить отчет о лабораторной работе в составе: постановка задачи, математическая модель, схема алгоритма решения задачи, текст программы, контрольные примеры.
Варианты индивидуальных заданий
Пример разработки математической модели и схемы алгоритма решения задачи для варианта задания вида:
Математическая модель (условия принадлежности точек выделенным областям)
- условие 1 (принадлежность области М1): x2 + (y-1)2 > 1 {вне верхней окружности} x < 0 {левее оси y} x > -2 {правее линии x = -2} y > 1 {выше линии y = 1} y < 2 {ниже линии y = 2} Площадь области М1: площадь прямоугольника (2 * 1) – площадь четверти круга (πr2 / 4) = 2 – π / 4
- условие 2 (принадлежность области М2): x2 + (y – 1)2 < 1 {внутри верхней окружности} (x + 1)2 + y2 > 1 {вне левой окружности} (x – 1)2 + y2 > 1 {вне правой окружности} y < 1 {ниже линии y = 1} Площадь области М2: площадь прямоугольника (2 * 1) – площадь полукруга (πr2 / 2) = 2 – π / 2
- условие 3 (принадлежность области М3): (x + 1)2 + y2 < 1 {внутри левой окружности} x2 + (y + 1)2 < 1 {внутри нижней окружности} Площадь области М3: площадь квадрата (1 * 1) – 2*(площадь квадрата (1 * 1) – четверть круга (πr2 / 4)) = 1 – 2 *(1 - π / 4) = 1 – 2 + π / 2 = π / 2 - 1
- условие 4 (принадлежность области М4): y < 0 {ниже оси x } (x – 1)2 + y2 < 1 {внутри правой окружности} x2 + (y + 1)2 > 1 {вне нижней окружности} Площадь области М4: четверть круга (πr2 / 4) + (площадь квадрата (1 * 1) – четверть круга (πr2 / 4)) = 1 * 1 = 1
- условие 5 (принадлежность области М5): x2 + (y+1)2 > 1 {вне нижней окружности} y > -2 {выше линии y = -2} y < -1 {ниже линии y = -1} x < 2 {левее линии x = 2} x > 0 {правее оси y} Площадь области М5: площадь прямоугольника (2 * 1) – площадь четверти круга (πr2 / 4) = 2 – π / 4
Схема алгоритма решения
да нет
да нет
да нет
да нет
да нет
1
2
3
4
5
|