Основные структуры алгоритмов.

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

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

Особенность базовых структур - наличие в них одного входа и одного выхода.

К основным структурам относятся:

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

алгоритмический язык Язык блок-схем
действие 1 действие 2 . . . . . . . . . действие n Основные структуры алгоритмов. - student2.ru

2. Базовая структура ветвление. Обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из путей работы алгоритма.

Каждый из путей ведет к общему выходу независимо от того, какой путь будет выбран.

Структура ветвление существует в четырех основных вариантах:

  • если-то; неполный выбор (одна ветвь не содержит никаких действий)
  • если-то-иначе; полный выбор (либо, либо другое действие)
  • выбор;
  • выбор-иначе.
алгоритмический язык Язык блок-схем
1. если-то
если условие то действия все Основные структуры алгоритмов. - student2.ru
2. если-то-иначе
если условие то действия 1 иначе действия 2 все Основные структуры алгоритмов. - student2.ru
3. выбор
выбор при условие 1: действия 1 при условие 2: действия 2 . . . . . . . . . . . . при условие N: действия N все Основные структуры алгоритмов. - student2.ru
4. выбор-иначе
выбор при условие 1: действия 1 при условие 2: действия 2 . . . . . . . . . . . . при условие N: действия N иначедействия N+1 все Основные структуры алгоритмов. - student2.ru

Примеры команды если

алгоритмический язык Язык блок-схем
если x > 0 то y := sin(x) все Основные структуры алгоритмов. - student2.ru
если a > b то a := 2*a; b := 1 иначе b := 2*b все Основные структуры алгоритмов. - student2.ru
выбор при n = 1: y := sin(x) при n = 2: y := cos(x) при n = 3: y := 0 все Основные структуры алгоритмов. - student2.ru
выбор при a > 5: i := i+1 при a = 0: j := j+1 иначе i := 10; j:=0 все Основные структуры алгоритмов. - student2.ru

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

Основные разновидности циклов представлены в таблице:

алгоритмический язык Язык блок-схем
Цикл типа пока. (цикл с предусловием) проверка условия проводится до выполнения тела цикла, и если при первой проверке условие выхода цикла выполняется, то тело цикла не выполняется ни разу. На естественном языке циклу Пока соответствует последовательность операторов: 1. Операторы начальных присвоений 2. Если условие идти к 5 3. Операторы тела цикла 4. Идти к 2 5. ……… выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова пока.
нц пока условие тело цикла (последовательность действий) кц Основные структуры алгоритмов. - student2.ru
Цикл типа для. выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне.
нц для i от i1до i2 тело цикла (последовательность действий) кц Основные структуры алгоритмов. - student2.ru

Примеры команд пока и для



алгоритмический язык Язык блок-схем
нц пока i <= 5 S := S+A[i] i := i+1 кц Основные структуры алгоритмов. - student2.ru
нц для i от 1 до 5 X[i] := i*i*i Y[i] := X[i]/2 кц Основные структуры алгоритмов. - student2.ru

1. Основные структуры алгоритмов. - student2.ru Цикл До (цикл с постусловием).Применяется при необходимости выполнить какие - либо вычисления несколько раз до выполнения некоторого условия.

Особенность цикла: он всегда выполняется хотя бы один раз, так как первая проверка условия выхода из цикла происходит после того, как тело цикла выполнено.

Тело цикла - та последовательность действий, которая выполняется многократно (в цикле).

Начальные присвоения - задание начальных значений тем переменным, которые используются в теле цикла.

На естественном языке циклу До соответствует последовательность операторов:

1. Операторы начальных присвоений

2. Операторы тела цикла

3. Если условие идти к 2

Линейные алгоритмы.

Основные структуры алгоритмов. - student2.ru Пример: Вычислить площадь круга.

Дано: R, радиус круга.

Требуется: S - площадь круга.

Связь:S=П*R2

Program First;

VarS, R: real;

Begin

Writeln(‘Введите радиус R’);

Readln (R);

S:=3.14*sqr(R);

writeln (‘S=’,S);

Readln;

End.

Наши рекомендации