Входные данные: a, b, с (длины сторон треугольника). Выходные данные: S, P (площадь и периметр треугольни-
ка).
Блок-схема |
Псевдокод |
1.Ввод чисел a, b, с
2.Вычисление полупериметра
3.Вычисление периметра
Р= a + b + с
4.Вычисление площади
√
5.Вывод S, P
6.Конец
Разветвляющейся (ветвящейся) называется конструкция, которая обеспечивает выбор между двумя альтернативами в зависимости от значения входных данных.
Структура «ветвление» существует в двух основных вариантах: полное и неполное ветвление.
Полное ветвление предполагает выполнение действий для обеих веток в алгоритме:
если [условие], то [действие 1], иначе [действие 2]
11
Блок-схема |
Псевдокод |
если [условие] то [действие 1]
иначе [действие 2]
конец если
Неполное ветвление предполагает выполнение действий только на одной ветви алгоритма (вторая отсутствует):
если [условие], то [действие]
Блок-схема |
Псевдокод |
если [условие] то [действие]
конец если
Циклической называется конструкция, в которой некая, идущая подряд группа действий (шагов) может выполняться несколько раз, в зависимости от входных данных или условия задачи. Совокупность повторяющихся действий алгоритма называют циклом. Т. е. циклические алгоритмы включают в се-
бя циклы. Группа повторяющихся действий на каждом шагу цикла называется телом цикла.
Циклический алгоритм включает в себя:
1)подготовку цикла – действия, связанные с заданием исходных данных, используемых в цикле;
2)тело цикла – повторяющиеся действия для вычисления
12
искомых величин, а также подготовка значений, необходимых для повторного выполнения действий в теле цикла;
3) условия продолжения цикла – действия, определяющие необходимость дальнейшего выполнения тела цикла.
Существует несколько видов циклических конструкций, с помощью которых можно организовать циклы. Их можно классифицировать следующим образом:
|
Циклы |
|
По способу |
С неизвестным |
С известным |
контроля |
числом повторений |
числом повторений |
окончания цикла |
|
|
Арифметический цикл (цикл с параметром)
По месту расположения С предусловием С постусловием
условия
Циклы, для которых число повторений определяется в ходе выполнения цикла, называются итерационными (циклы с неизвестным числом повторений). В этом случае одно повторение цикла называется итерацией. Для лучшего понимания их основных отличий друг от друга рассмотрим каждый тип отдельно.
1. Арифметический цикл (цикл с параметром) предпола-
гает, что число итераций заранее известно. Предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне.
Цикл типа Для:
для всех [параметр цикла] повторять [действие] [параметр цикла] – счетчик количества повторений; [действие] – тело цикла (последовательность команд,
действий).
Количество повторений однозначно определяется правилом изменения параметра, которое задается с помощью начального и конечного значений параметра и шагом его изме-
13
нения. На первом шаге цикла значение параметра равно N, на втором – N+h, на третьем – N+2h и т. д. На последнем шаге цикла значение параметра не больше М, но такое, что дальнейшее его изменение приведет к значению большему, чем М.
i – параметр цикла (является счетчиком количества повторений);
N – начальное значение параметра цикла;
M – конечное значение параметра цикла;
h – шаг, с которым изменяется параметр цикла.
Блок-схема |
Псевдокод |
начало цикла для
i от M до N с шагом h
повторять:
тело цикла (последовательность действий)
конец цикла
2. Цикл с предусловием предполагает, что число итераций заранее не определено и зависит от входных данных задачи. В данной циклической структуре сначала проверяется значение условия перед выполнением очередного шага цикла.
Цикл типа Пока:
пока <условие> выполнять [действие] <условие> – некоторое проверяемое логическое условие;
[действие] – тело цикла (последовательность команд, действий).
Условие записывается в виде логического выражения, в нем определяется необходимость дальнейшего выполнения повторяющихся действий.
Оператор цикла с предусловием выполняется следующим образом:
14
–сначала проверяется условие продолжения цикла;
–если это условие истинно, то выполняется тело цикла;
–затем снова проверяется условие продолжения цикла
ит. д.;
–если условие продолжения цикла ложно, то происходит выход из цикла.
Особенностью цикла с предусловием является то, что если изначально условие ложно, то тело цикла не выполнится ни разу.
Блок-схема |
Псевдокод |
начало цикла пока
<условие> истинно
выполнять:
тело цикла (последовательность действий)
конец цикла
3. Цикл с постусловием – так же, как и в цикле с предусловием, число итераций заранее не определено и зависит от входных данных задачи. Но, в отличие от него, значение условия проверяется после выполнения очередного шага цикла.
Цикл типа До:
выполнять [действие] до тех пор, пока <условие> лож-
но
<условие> – некоторое проверяемое логическое условие; [действие] – тело цикла (последовательность команд,
действий).
Условие записывается в виде логического выражения, в нем определяется необходимость дальнейшего выполнения повторяющихся действий.
15