Графическое представление алгоритма.

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

Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий.

Блок "процесс" применяется для обозначения действия или последовательности действий, изменяющих значение, форму представления или размещения данных. Для улучшения наглядности схемы несколько отдельных блоков обработки можно объединять в один блок. Представление отдельных операций достаточно свободно.

Блок "решение" используется для обозначения переходов управления по условию. В каждом блоке "решение" должны быть указаны вопрос, условие или сравнение, которые он определяет.

Блок "модификация" используется для организации циклических конструкций. (Слово модификация означает видоизменение, преобразование). Внутри блока записывается параметр цикла, для которого указываются его начальное значение, граничное условие и шаг изменения значения параметра для каждого повторения.

Блок "предопределенный процесс" используется для указания обращений к вспомогательным алгоритмам, существующим автономно в виде некоторых самостоятельных модулей, и для обращений к библиотечным подпрограммам.

Блок «начало» и «конец» алгоритма используется для указания начала и конца алгоритма.

Блок «начало цикла с параметрами» используется для указания началацикла с параметрами.

Блок «конец цикла с параметрами» используется для указания концацикла с параметрами.

Блок «ввод-вывод данных» используется для указания ввода и вывода данных.

- переход от блока к блоку.

А
- соединитель блоков на странице.

В
- соединитель блоков на листах.

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

Характерной особенностью базовых структур является наличие в них одного входаиодного выхода.

1. Базовая структура"следование". Образуется последовательностью действий, следующих одно за другим.

2. Базовая структура"ветвление". Обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран. Структура ветвление существует в четырех основных вариантах:

если—то;

если—то—иначе;

выбор;

выбор—иначе.

 

1. если—то
если условие то действия все если x > 0 то y := sin(x) все
2. если—то—иначе
если условие то действия 1 иначе действия 2 все если a > b то a := 2*a; b := 1 иначе b := 2*b все
3. выбор
выбор при условие 1: действия 1 при условие 2: действия 2 . . . . . . . . . . . . при условие N: действия N все выбор при n = 1: y := sin(x) при n = 2: y := cos(x) при n = 3: y := 0 все
4. выбор—иначе
выбор при условие 1: действия 1 при условие 2: действия 2 . . . . . . . . . . . . при условие N: действия N иначедействия N+1 все выбор при a > 5: i := i+1 при a = 0: j := j+1 иначе i := 10; j:=0 все

3. Базовая структура "цикл". Обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла. Основные разновидности циклов представлены в таблице:

 

1. Цикл типа пока – с предусловием. Предписывает выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова пока.
нц пока условие тело цикла (последовательность действий) Кц нц пока i <= 5 S := S+A[i] i := i+1 кц
2. Цикл типа для – с параметрами. Предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне.
нц для i от i1до i2 тело цикла (последовательность действий) Кц нц для i от 1 до 5 X[i] := i*i*i Y[i] := X[i]/2 кц
3. Цикл типа до тех пор – с постусловием.Предписывает выполнять тело цикла до тех пор, пока условие не станет истинным.
нц тело цикла (последовательность действий) кц условие нц i=i+1 S=S+a(i) кц i<10

 

Вложенные циклы.

Возможны случаи, когда внутри тела цикла необходимо повторять некоторую последовательность операторов, т. е. организовать внутренний цикл. Такая структура получила название цикла в цикле или вложенных циклов. Глубина вложения циклов (то есть количество вложенных друг в друга циклов) может быть различной.

При использовании такой структуры для экономии машинного времени необходимо выносить из внутреннего цикла во внешний все операторы, которые не зависят от параметра внутреннего цикла.

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

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

Следовательно, язык для записи алгоритмов должен быть формализован. Такой язык принято называть языком программирования, а запись алгоритма на этом языке — программой для компьютера.

<== предыдущая лекция | следующая лекция ==>
Понятие алгоритма. Свойства, виды. | Языки программирования.


Дата добавления: 2017-04-20; просмотров: 45; ЗАКАЗАТЬ НАПИСАНИЕ РАБОТЫ


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию, введите в поисковое поле ключевые слова и изучайте нужную вам информацию.

Поделитесь с друзьями:

Если вам понравился данный ресурс вы можете рассказать о нем друзьям. Сделать это можно через соц. кнопки выше.
helpiks.org - Хелпикс.Орг - 2014-2017 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.