Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мои ответы.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
1.91 Mб
Скачать
  1. Основные типы алгоритмов

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

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

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

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

В зависимости от особенностей своего построения алгоритмы делятся на три основные группы:

  1. Линейные;

  2. Разветвляющиеся;

  3. Циклические.

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

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

Линейным называется алгоритм, в котором все этапы решения задачи выполняются строго последовательно.

Т.е. линейный алгоритм выполняется в естественном порядке его написания и не содержит разветвлений и повторений.

А лгоритмы ветвящейся структуры.

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

Ветвью алгоритма называется каждый подобный путь.

Признаком разветвляющегося алгоритма является наличие операций условного перехода, когда происходит проверка истинности некоторого логического выражения (проверяемое условие) и в зависимости от истинности или ложности проверяемого условия для выполнения выбирается та или иная ветвь алгоритма. Алгоритм предполагает выполнение Действия 1, если записанное условие истинно (выполняется), и выполнение Действия 2 ( если условие ложно (не выполняется).

В частном случае может отсутствовать один из блоков "Действие 1" или "Действие 2".

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

Запишем ветвящийся алгоритм на псевдокоде и графически:

Существуют задачи связанные с вычислением функций, заданных несколькими арифметическими выражениями (формулами).

Разветвляющийся алгоритм – это такой алгоритм, который содержит команду ветвления.

Команда ветвления - это составная команда, в которой та или иная серия команд выполняется после проверки условия.

Циклический алгоритм.

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

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

Примеры циклических алгоритмов может служить алгоритм покраски забора.

Действительно, рассмотрим этот алгоритм в словесно-формульном виде:

Шаг I. Подготовить исходные данные (забор, краску, кисть);

Шаг II. Подойти к забору;

Шаг III. Обмакнуть кисть в краску;

Шаг IV. Нанести краску кистью на поверхность забора;

Шаг V. Если забор еще не весь окрашен, то повторить алгоритм, начиная с пункта ( Шаг III).

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

1. Инструкция "цикл с параметром" (цикл с заданным количеством повторений).

Обозначим:

x - параметр цикла (является счетчиком количества повторений);

a , b - соответственно начальные и конечные значения параметра цикла;

h - шаг, с которым изменяется параметр цикла;

S - Оператор (инструкция), повторяемый в цикле;

Общий вид структуры цикла с параметром будет:

2 . Инструкция "цикл с предусловием" (цикл-"пока"):

Обозначим:

В - некоторое проверяемое логическое условие;

S - Оператор (инструкция), повторяемый в цикле;

Тогда инструкция в псевдокоде примет вид:

Блок-схема такого цикла имеет вид:

3 . Инструкция "цикл с постусловием" (цикл-"до"):

Блок-схема такого цикла имеет вид:

Циклический алгоритм - это такой алгоритм, который содержит команду повторения.

Команда повторения – это составная команда, в которой тело цикла выполняется несколько раз.

Выделяется три типа команд повторения: цикл ДЛЯ, цикл ПОКА, цикл ДО. Каждый из циклов повторяет некоторую последовательность команд, называемую телом цикла. Друг от друга различные типы циклов отличаются в основном лишь способом проверки окончания цикла.