
- •Понятие алгоритма. Исполнитель алгоритма Основным в процессе программирования является разработка алгоритма. Это один из наиболее сложных этапов решения задачи с использованием эвм.
- •3. Свойства алгоритма
- •Если для данной задачи невозможно составить алгоритм, обладающий данными свойствами, то задача является алгоритмически неразрешимой и она не может быть решена на эвм.
- •4. Формы записи алгоритма
- •5. Виды алгоритмов
- •Модульный метод (модульная технология)
- •6. Уровни языков программирования
- •7. Технологии программирования
- •8. Компоненты и основные понятия языка программирования. Компоненты языка программирования:
- •Основные понятия языка программирования
5. Виды алгоритмов
Алгоритмы можно представлять как некоторые структуры, состоящие из отдельных базовых (т.е. основных) элементов.
Характерной особенностью базовых структур является наличие в них одного входа и одного выхода.
1. Базовая структура "следование". Образуется последовательностью действий, следующих одно за другим:
Линейный - шаги алгоритма следуют один за другим не повторяясь, действия происходят только в одной заранее намеченной последовательности.
Блоки алгоритма 1, 2, 3 выполняются именно в такой последовательности, после чего алгоритм достигает цели и заканчивается.
2. Базовая структура "ветвление". Обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран. Структура ветвление существует в четырех основных вариантах:
если—то;
если—то—иначе;
выбор;
выбор—иначе.
Алгоритм с ветвлением - в зависимости от выполнения или невыполнения условия, исполняется либо одна, либо другая ветвь алгоритма.
В
данном алгоритме проверяется выполнение
условия, и если оно выполняется, то есть
на вопрос можно ответить "Да",
исполняется блок алгоритма 1 (одно ли
несколько действий), а если не выполняется
- ответ на вопрос отрицательный, то
исполняется блок 2.
Примечания: одно из блоков: 1 или 2 может не быть вовсе. Тогда в одном из случаев будут выполняться какие-либо действия, а в другом - ничего не будет выполняться.
3. Базовая структура "цикл". Обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла.
Циклический - блоки алгоритма выполняются до тех пор, пока не будет выполнено определенное условие.
Блок алгоритма 1 будет выполняться 1 или несколько раз до тех пор, пока не выполнится условие. Алгоритм выполняется так: выполняется блок 1, проверяется условие, если оно не выполняется, то блок 1 выполняется снова и условие проверяется заново. При выполнении условия алгоритм заканчивается.
М
етоды проектирования и разработки алгоритмов
Нисходящим проектированием алгоритмов (проектированием алгоритмов «сверху вниз») называется такой метод составления алгоритмов, когда исходная задача (алгоритм) разбивается на ряд вспомогательных подзадач (подалгоритмов), формулируемых и решаемых в терминах более простых и элементарных операций (процедур).
Последние, в свою очередь, вновь разбиваются на более простые и элементарные, и так до тех пор, пока не дойдём до команд исполнителя.
Восходящий метод (метод проектирования «снизу вверх»), опираясь на некоторый, заранее определяемый корректный набор подалгоритмов, строит функционально завершенные подзадачи более общего назначения, от них переходит к более общим, и так далее, до тех пор, пока не дойдем до уровня, на котором можно записать решение поставленной задачи.
Структурные принципы алгоритмизации (структурные методы алгоритмизации) – это принципы формирования алгоритмов из базовых структурных алгоритмических единиц (следование, ветвление, повторение), используя их последовательное соединение или вложение друг в друга с соблюдением определённых правил, гарантирующих исполняемость алгоритма сверху вниз и последовательно.
Структурированный алгоритм – это алгоритм, представленный как следования и вложения базовых алгоритмических структур.
У структурированного алгоритма статическое состояние (до актуализации алгоритма) и динамическое состояние (после актуализации) имеют одинаковую логическую структуру, которая прослеживается сверху вниз ("как читается, так и исполняется.