3_1 основы алгоритмизации_1.ppt
- Количество слайдов: 15
Основы алгоритмизации Решение любой задачи является творческим процессом, который состоит из нескольких последовательных этапов. К ним относятся: А. Анализ постановки задачи и ее предметной области 1. понимание постановки и требований исходной задачи, определение предметной области, для которой поставлена задача, 2. анализ предметной области, выявление данных, которые фиксируют входную и выходную информацию (определение их структуры и свойств), определение отношений между данными, условий и ограничений, накладываемых на эти отношения, Б. Формальное моделирование решения задачи 3. выбор и применение формальной системы для описания модели предметной области и решения задачи, 4. формирование основной идеи, выбор методов решения задачи, 5. определение технологий, средств и исполнителя решения задачи, построение алгоритмов, реализующих выбранные методы, В. Практическое решение 6. применение выбранных методов и средств для решения, 7. анализ полученных результатов.
Алгоритм – это конечная последовательность точных указаний, приводящая к решению поставленной задачи. Муххамад ибн Муса ал-Хорезми (Магомет, сын Моисея, из Хорезма ). Приблизительно с 783 по 850 гг.
Алгоритм – это точно определенная последовательность действий для некоторого исполнителя, выполняемых по строго определенным правилам и приводящих через некоторое количество шагов к решению задачи. Любой алгоритм существует не сам по себе, а предназначен для определенного исполнителя (человека, робота, компьютера, языка программирования и т. д. ). Совокупность команд, которые данный исполнитель умеет выполнять, называется системой команд исполнителя. Алгоритм описывается в командах исполнителя, который будет его реализовывать. Объекты, над которыми исполнитель может совершать действия, образуют так называемую среду исполнителя. Исходные данные и результаты любою алгоритма всегда принадлежат среде того исполнителя, для которого предназначен алгоритм.
Свойства алгоритма: - детерминированность (точность указаний, исключающая их произвольное толкование), - дискретность (возможность расчленения вычислительного процесса на отдельные элементарные операции, возможность выполнения которых не вызывает сомнений), - массовость (пригодность алгоритма для решения всех задач заданного класса), - результативность (прекращение процесса через определенное число шагов с выдачей искомых результатов или сообщения о невозможности продолжения вычислительного процесса).
Основные способы записи алгоритмов Словесный способ предполагает словесное (без формул и таблиц) описание алгоритма Пример. Пусть задан массив чисел. Требуется проверить, все ли числа принадлежат заданному интервалу. Интервал задается границами А и В.
Основные способы записи алгоритмов Формульно-словесный способ предполагает задание инструкций с использованием математических символов и выражений в сочетании со словесными пояснениями. Пример. Требуется написать алгоритм вычисления площади треугольника по трем сторонам
Основные способы записи алгоритмов Графический способ. Алгоритм представляется в виде схемы, состоящей из элементов символов, отражающих отдельные операции технологического процесса обработки данных и отдельные вычислительные операции. Каждый этап процесса переработки данных представляется в виде геометрических фигур (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций начало/конец алгоритма описание отдельных действий (процесс) обращение к вспомогательным алгоритмам (предопределенный процесс)
ввод/вывод «решение» (проверка условия или условный блок) цикл соединительные блоки
Основные способы записи алгоритмов Псевдокод позволяет формально изображать логику программы, не заботясь при этом о синтаксических особенностях конкретного языка программирования. Обычно представляет собой смесь операторов языка программирования и естественного языка.
Основные способы записи алгоритмов Табличный способ описания алгоритмов может быть с успехом применен для проверки правильности функционирования разработанного алгоритма на конкретных тестовых наборах входных данных, которые вместе с результатами выполнения алгоритма фиксируются в "таблицах трассировки". Данный способ носит, в основном, вспомогательный характер. Операторный способ предполагает представление алгоритма в виде последовательности операторов.
Основные типы структур алгоритмов Структура «Следование» предполагает последовательное расположение блоков и групп блоков.
Основные типы структур алгоритмов Структура «Разветвление» применяется, когда в зависимости от заданного условия нужно выполнить либо одно, либо другое действие
Основные типы структур алгоритмов Структура «Повторение» Эту структуру часто называют циклом. Она имеет два варианта построения. Структура цикла «До» применяется при необходимости выполнить какие-либо вычисления несколько раз до выполнения некоторого заданного условия Структура цикла «Пока» предполагает проверку условия до выполнения тела цикла
Основные типы структур алгоритмов Варианты взаимного расположения циклов последовательные вложенные запрещенные
Основные типы структур алгоритмов Структура «Множественный выбор» является обобщением разветвления, когда в зависимости от значения переменной I выполняется одно из нескольких действий S 1, S 2, …, Sn
3_1 основы алгоритмизации_1.ppt