Типовые структуры алгоритмов. Определение основных методов вычислительных процессов. Примеры

Основные структуры алгоритмов — это ограниченный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий.

1. Следование. Последовательное размещение блоков и групп блоков. В программе реализуется последовательным размещением операторов.

2. Цикл « До». Применяется при необходимости выполнить какие-либо вычисления несколько раз до выполнения некоторого условия. Особенность этого цикла в том, что он всегда выполняется хотя бы один раз, так как первая проверка условия выхода из цикла происходит после того, как тело цикла выполнено. Тело цикла — а последовательность действий, которая выполняется многократно (в цикле). Начальные присвоения — задание начальных значений тем переменным, которые используются в теле цикла.

3. Цикл «Пока». Цикл «Пока» отличается от цикла «До» тем, что проверка условия проводится до выполнения тела цикла, и если при первой проверке условие выхода из цикла выполняется, то тело цикла не выполняется ни разу.

4. Разветвление. Применяется, когда в зависимости от условия нужно выполнить либо одно, либо другое действие. Действие 1 или действие 2 может в свою очередь содержать несколько этапов.

5. Обход. Частный случай разветвления, когда одна ветвь не содержит никаких действий.

6. Множественный выбор. Является обобщением разветвления, когда в зависимости от значения переменной (I) выполняется одно из нескольких действий. При I =1 выполняется действие S1,при I =2— действие S2 и т. д.

Методы проектирования алгоритмов.

Методы проектирования алгоритмов включают: нисходящее проектирование, модульность, структурное программирование.

Нисходящее проектирование предполагает последовательное разбиение исходной задачи на подзадачи до такой конкретизации, когда подзадача сможет быть реализована одним оператором выбранного для программирования языка. По ходу нисходящего проектирования та или иная подзадача может сформировать самостоятельный модуль. Тогда может быть применен принцип модульного программирования. Он обеспечивает легкость составления алгоритмов и отладки программ, легкость сопровождения и модификации, а также возможность одновременной разработки различных модулей разными специалистами с использованием разных языков программирования.

При работе над модулем можно применить принцип структурного программирования. Его цель – повышение читабельности и ясности алгоритма (и программы), более высокой производительности программистов и упрощение отладки. В соответствии с этим принципом для построения любого алгоритма (программы) требуются три типовых блока:

функциональный. Используется для представления линейных алгоритмов.

 

Циклический. Используется для представления циклических алгоритмов.

 

Конструкция принятия двоичного решения. Применяется для представления разветвляющихся алгоритмов.

 

Алгоритм поиска минимального (максимального) элемента одномерного массива. Пример.

 

Алгоритм поиска минимального (максимального) элемента массива: сначала делается предположение, что первый элемент массива является минимальным (максимальным), затем остальные элементы массива последовательно сравниваются с этим элементом. Если во время очередной проверки обнаруживается, что проверяемый элемент меньше (больше) принятого за минимальный (максимальный), то этот элемент становится минимальным (максимальным) и продолжается проверка оставшихся элементов.

 

Пример:

 

k:=0;

i:=1;

while i<=N-1 do

Begin

if A[k]>A[i] then

Begin

k:=i;

end;

inc(i);

end;

writeln(A[k]);

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: