Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория алгоритмов лекция.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
69.99 Кб
Скачать

Подготовка исходных данных и непосредственное выполнение программы

Исходные данные, особенно очень объемные, могут быть подготовлены отдельно, на внешнем носителе (на жестком диске или дискете). В этом случае экономится время на их оперативный ввод (например, с клавиатуры). Если все предыдущие этапы завершились благополучно, то выполнение программы происходит почти автоматически, не требует особых затрат (кроме времени) и может быть проведено человеком (оператором), не принимавшим участия в предварительной работе над задачей.

3. Понятие алгоритма. Сущность алгоритмизации

Понятие алгоритма является фундаментальной категорией математики и не может быть выражено через другие, более простые понятия, а рассматривается как нечто неопределяемое. Другими словами, единого определения алгоритма не существует, есть только разные подходы, описания этого понятия, причем, в полном соответствии с той областью знаний, где он применяется. В рамках настоящего пособия не предусмотрено углубление в теорию алгоритмов (см., например, [12, 15]). Будем рассматривать понятие алгоритма и сущность процесса алгоритмизации в приложении к решению некоторых вычислительных задач. Опишем понятие алгоритма, например, так:

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

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

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

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

В более узком смысле алгоритмизация - это процедура поиска, разработки и описания алгоритма решения задачи.

4. Свойства алгоритма

Алгоритм должен обладать следующими свойствами:

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

  • Массовость - выражается в том, что с помощью алгоритма можно решать не одну конкретную задачу, а любую задачу из некоторого класса однотипных задач при всех допустимых значениях исходных данных.

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

  • Дискретность - означает, что алгоритм состоит из последовательности отдельных шагов - элементарных действий, выполнение которых не представляет сложности. Именно благодаря этому свойству алгоритм может быть реализован на ЭВМ.

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

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

Если разработанная Вами последовательность действий не обладает хотя бы одним из перечисленных выше свойств, то она не может считаться алгоритмом