КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Контрольная работа № 1. Программирование с использованием линейных и ветвящихся алгоритмов
Задание 1.1. Программирование формул Целью работы является освоение программирования алгоритмов с линейной структурой, когда решение задачи является результатом выполнения цепи вычислений, в которой очередные вычислительные действия используют в качестве исходных данных результаты вычислений на предыдущих этапах. Действия по вычислениям промежуточных и окончательных результатов описываются операторами присваивания. Необходимо следить, чтобы порядок расположения операторов присваивания в программе от ее начала к концу соответствовал логической последовательности действий при решении поставленной задачи. При выборе имен переменных и составлении арифметических выражений необходимо правильно устанавливать тип используемых величин (целые, вещественные и так далее). При использовании в формулах греческого алфавита можно использовать их латинские названия или буквы, сходные по начертанию. Например, символ a можно заменить на Alfa или A, w на Omega или W. Не следует выражать одни переменные через другие для получения одной формулы из нескольких: в алгоритме и программе необходимо записать столько формул, сколько приводится в задании. К сожалению, в языке Паскаль имеется ограниченное количество математических функций, поэтому, при отсутствии стандартной функции ее выражают через другие, используя функциональные соотношения. Ниже приводятся основные математические функции, отсутствующие в языке Паскаль:
Более того, любую функцию можно вычислить с помощью четырех арифметических операций итерационными методами или разложением в ряды. Варианты задания, определенные в соответствии с табл. 1, приведены в табл. 2. Таблица 2. Варианты заданий 1.1
Продолжение табл. 2
Окончание табл. 2
Задание 1.2. Ветвящиеся алгоритмы Логические выражения используются не только для решения задач булевой алгебры, но и для ветвления программы в логических и циклических операторах. Причем последний вариант использования логических выражений применяется наиболее часто. Логические выражения состоят из логических констант, переменных и отношений, соединенных логическими операциями. В простейших случаях в операторах используют отношения: два выражения, соединенных знаком отношения (<, >, >=, <=, =, <>), например I > 20. Но иногда возникают условия, требующие использования более сложных логических выражений. Задание. На плоскости задана фигура (например, рис. 9, усеченный круг, в заданиях область фигуры заштрихована). Вводится точка с координатами X,Y. Определить, принадлежит введенная точка фигуре или нет. В результате анализа должно выводиться: «Введенная точка принадлежит фигуре» или «Введенная точка фигуре не принадлежит». Считать, что точка на границе фигуре принадлежит.
Рис. 9. Пример фигуры Для определения вхождения точки в круг можно использовать формулу окружности
Соответственно изменив знак = на < получим условие вхождения точки в круг c координатами центра (3,3) и радиусом 3:
Кроме этого область, занятая треугольником, так же не входит в закрашенную область, то есть полуплоскость над прямой Y = ‑ X + 7 фигуре не принадлежит. Условия нахождения точки внутри круга и под прямой должны выполняться одновременно. Для этого необходимо использовать логическую операцию AND. Таким образом логическое выражение
примет истинное значение, если точка входит в закрашенную область, иначе ложное. Тогда в логическом операторе по прямой ветви Then выводится «Введенная точка принадлежит фигуре», а по ветви Else – «Введенная точка фигуре не принадлежит». Но можно и поменять ветви местами, тогда при вхождении точки в фигуру логическое выражение должно принимать ложное значение. Тривиальный вариант: поставить перед предыдущим выражением знак отрицания NOT. Но более наглядным решением будет составление выражения с условием невхождения точки в фигуру. Здесь должно выполняться хотя бы одно из условий: точка не входит в круг или точка лежит над прямой, соответственно, логическое выражение примет вид:
При выполнении лабораторной работы составить два варианта программы (без использования операции NOT) для фигуры, соответствующей варианту задания. Алгоритм этой задачи представляет типичную ветвящуюся структуру с одним блоком ввода, одним блоком решения (анализа вхождения точки) и двумя блоками вывода. Так как размеры блоков должны быть одинаковыми (ромб блока решения не должен превышать блоков ввода-вывода), то при необходимости можно использовать фигуру комментария:
Рис. 10. Комментарий в блок-схемах алгоритмов Варианты заданий 1.
3.
5.
7.
9.
11.
13.
15.
17.
19.
21.
23.
25.
27.
29.
Дата добавления: 2014-11-16; Просмотров: 1064; Нарушение авторских прав?; Мы поможем в написании вашей работы! |