КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Типовые структуры алгоритмов.Различают три типовые структуры алгоритмов: линейную; разветвленную; циклическую. Чаще всего алгоритмы решаемых задач состоят из отдельных частей, которые, в свою очередь, относятся к одной или другой типовой структуре. В линейной структуре символы алгоритма изображены на схеме в той последовательности, в которой должны быть выполнены предписываемые ими действия. Пример: Вычислить высоты треугольника со сторонами А, В, С по формулам: ; ; , где: - полупериметр треугольника. Рис. 2.1. Блок-схема алгоритма линейной структуры. Разветвленная структура используется в том случае, когда в зависимости от значений промежуточного результата выбирается та или иная последовательность действий. То есть в зависимости от выполнения некоторого логического условия вычисление должно идти по одной или другой ветви программы. На блок-схеме условие записывается внутри ромба из которого выходят две стрелки, при выполнении условия путь к следующей команде указывает линия с надписью «Да»; если условие не выполняется, по путь к следующей команде указывает стрелка с надписью «Нет». Пример: Вычислить значения функции , где: и - заданные параметры. На первый взгляд можно составить линейную структуру. Но при равенстве знаменателя нулю функция не определена. Необходимо предусмотреть этот случай и в качестве результата в этом случае выдать информацию о том, что знаменатель функции равен нулю. Таким образом, в блок - схеме должно быть две ветви: 1 ветвь - знаменатель не равен нулю и можно вычислить и напечатать значение функции; 2 ветвь - знаменатель равен нулю и нужно выдать информацию о невозможности вычислить значение функции. Рис. 2.2. Блок-схема алгоритма разветвленной структуры. Циклическая (итеративная) структура – используется, если при решении задачи необходимо многократно производить какие-либо действия с различными исходными данными, то есть предусмотрено неоднократное выполнение одной и той же последовательности действий (тела цикла). Число повторений в циклических процессах или известно заранее, или зависит от какого-либо условия. При организации циклов необходимо: 1) задать начальное значение параметра цикла - переменной, которая будет изменяться при каждом повторении цикла; 2) изменить значение параметра цикла при каждом повторении цикла на шаг изменения; 3) проверить условие окончания этих повторений по значению этого параметра и перейти в начало цикла, если повторения ещё не закончены. Управление циклом состоит из трех шагов: инициализации, проверки и модификации. При проверке отслеживается условие, которое обозначает окончание цикла, и если оно истинно, выполнение цикла завершается. Другие два этапа обеспечивают проявление условия завершения. В процессе инициализации вводится начальное условие, а шаг модификации видоизменяет это условие до условия завершения. Обычно при написании программ больше всего ошибок допускается в управлении циклом. В цикле с предуcловием (while) – проверка условия завершения осуществляется до выполнения тела цикла. В цикле с постусловием (repeat) - до проверки условия завершения выполняется тело цикла. Пример: Вычислить при изменении от 0 до 3 с шагом 0,1. С изменением параметра математическим способом и использованием блока сравнения блок–схема представлена на рис. 2.3 б) и в). Если в блок–схеме используется блок организации цикла, то эта блок – схема представлена на рис. 2.3 а).
а) б) в) Рис. 2.3. Алгоритмы циклической структуры.
|