Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ПЯВУ.docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
933 Кб
Скачать
☆

Тема 2. Основные понятия алгоритмизации. (4 часа)

Содержание учебного материала:

Сущность алгоритмизации. Понятия алгоритм, исполнитель алгоритма. Пять важных свойств алгоритмов. Величины в алгоритмах. Базовые структуры алгоритмов: линейный алгоритм, разветвленный алгоритм, циклический алгоритм. Формы представления алгоритма: словесная, блок-схема, псевдокод, программная. Схемы алгоритмов, программ, данных и систем. Представление основных управляющих структур программирования. Теорема структуры и структурное программирование. Термин задача. Классификация задач: технологические, функциональные. Решение задачи. Постановка задачи. Понятие вычислителя. Построение модели. Разработка алгоритма. Исполнение алгоритма.

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

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

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

В Толковом словаре по информатике дано общепринятое понятие:

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

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

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

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

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

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

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

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

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

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

Понятие исполнителя алгоритма

Исполнитель алгоритма - это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, способная выполнить действия, предписываемые алгоритмом.

Исполнитель алгоритма характеризуется следующим:

- средой;

- элементарными действиями;

- системой команд;

- отказами.

Среда (или обстановка) - это "место обитания" исполнителя.

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

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

После вызова команды исполнитель совершает соответствующее элементарное действие.

Отказы - ситуации сбоя работы исполнителя, которые возникают, если команда вызывается при недопустимом для нее состоянии среды.

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

В информатике универсальным исполнителем алгоритмов является компьютер.

Формы записи алгоритмов

На практике наиболее распространены следующие формы представления алгоритмов:

  1. словесная (запись на естественном языке);

  2. графическая (изображения из графических символов);

  3. псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.;

  4. программная (тексты на языках программирования).