Алгоритм
Что такое алгоритм Алгоритм точное и понятное предписание исполнителю совершить последовательность действий, направленных на решение поставленной задачи.
Исполнитель алгоритма Исполнитель алгоритма - некоторая абстрактная или реальная ( техническая, биологическая или биотехническая ) система, способная выполнить действия, предписываемые алгоритмом. Система команд. Каждый исполнитель может выполнять команды только из некоторого строго заданного списка системы команд исполнителя.
Свойства алгоритмов Понятность для исполнителя исполнитель алгоритма должен знать, как его выполнять. Дискретность ( прерывность, раздельность ) алгоритм должен представлять процесс решения задачи как последовательное выполнение простых ( или ранее определенных ) шагов ( этапов ). Определенность каждое правило алгоритма должно быть четким, однозначным и не оставлять места для произвола. Благодаря этому свойству выполнение алгоритма носит механический характер и не требует никаких дополнительных указаний или сведений о решаемой задаче.
Свойства алгоритмов Результативность ( или конечность ) состоит в том, что алгоритм должен приводить к решению задачи за конечное число шагов. Массовость означает, что алгоритм решения задачи разрабатывается в общем виде, т. е. он должен быть применим для некоторого класса задач, различающихся лишь исходными данными. При этом исходные данные могут выбираться из некоторой области, которая называется областью применимости алгоритма.
Способы записи алгоритма Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке. Алгоритм нахождения наибольшего общего делителя ( НОД ) двух натуральных чисел может быть следующим : 1) задать два числа ; 2) если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма ; 3) определить большее из чисел ; 4) заменить большее из чисел разностью большего и меньшего из чисел ; 5) повторить алгоритм с шага 2. Алгоритм нахождения наибольшего общего делителя ( НОД ) двух натуральных чисел может быть следующим : 1) задать два числа ; 2) если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма ; 3) определить большее из чисел ; 4) заменить большее из чисел разностью большего и меньшего из чисел ; 5) повторить алгоритм с шага 2.
Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным. При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий. Способы записи алгоритма
Такое графическое представление называется схемой алгоритма или блок - схемой. В блок - схеме каждому типу действий ( вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т. д.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий.
Наиболее часто употребляемые блоки. Название символаОбозначение и пример заполнения Пояснение Пуск - остановНачало, конец алгоритма, вход и выход в подпрограмму Ввод - выводВвод - вывод в общем виде ДокументВывод результатов на печать Начало Ввод a, b, c Печать a, c
Наиболее часто употребляемые блоки. Название символаОбозначение и пример заполнения Пояснение ПроцессВычислительное действие или последовательность действий РешениеПроверка условий МодификацияНачало цикла x=(a+b)/sin(t) a < b данет i=1, 50, 2
Пример записи алгоритма в виде блок схемы Начало Ввод a, b, c a < b данет х :=(a+b)/sin( а ) х :=(b-c)/2 Вывод х Останов
Логическая структура любого алгоритма может быть представлена комбинацией трех базовых структур : следование, ветвление, цикл. Характерной особенностью базовых структур является наличие в них одного входа и одного выхода.
Базовая структура СЛЕДОВАНИЕ Образуется из последовательности действий, следующих одно за другим
Базовая структура ВЕТВЛЕНИЕ Обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран. Структура ветвление существует в четырех основных вариантах если то
Базовая структура ВЕТВЛЕНИЕ если то иначе
Базовая структура ВЕТВЛЕНИЕ выбор
Базовая структура ВЕТВЛЕНИЕ выбор иначе
Базовая структура ВЕТВЛЕНИЕ Пример использования структуры если - то выбор
Задания на составление алгоритма с использованием базовой структуры ветвление Переменной М присвоить значение большего из двух чисел а и b. Определить и вывести на печать день недели по его номеру ( случайное число от 1 до 7). Составить алгоритм нахождения корней квадратного уравнения.
Базовая структура ЦИКЛ Обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла.
Основные разновидности циклов Цикл типа пока
Основные разновидности циклов Цикл типа для
Примеры использования циклов Цикл типа пока Цикл типа для