Способы представления алгоритмов | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
Алгоритмы и структуры данных Team Lead Архитектура и шаблоны проектирования Разработчик IoT C# Developer. Professional PostgreSQL Разработчик на Spring Framework
-5%
Flutter Mobile Developer NoSQL iOS Developer. Basic
-10%
C++ Developer. Basic C++ Developer. Professional Android Developer. Professional Microservice Architecture Unity Game Developer. Professional Базы данных Node.js Developer React.js Developer Специализация Java-разработчик
-25%
Web-разработчик на Python Framework Laravel Cloud Solution Architecture Vue.js разработчик Интенсив «Оптимизация в Java» Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив "Tarantool" PHP Developer. Basic
Инфраструктура
Мониторинг и логирование: Zabbix, Prometheus, ELK Administrator Linux. Professional Дизайн сетей ЦОД Разработчик IoT PostgreSQL Экспресс-курс "Версионирование и командная работа с помощью Git"
-30%
Microservice Architecture Highload Architect Специализация Administrator Linux
-25%
Network engineer Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool" Network engineer. Basic
Корпоративные курсы
Безопасность веб-приложений IT-Recruiter Дизайн сетей ЦОД Компьютерное зрение Разработчик IoT Вебинар CERTIPORT Machine Learning. Professional
-6%
NoSQL Пентест. Практика тестирования на проникновение Java QA Engineer. Базовый курс Руководитель поддержки пользователей в IT
-8%
SRE практики и инструменты Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Infrastructure as a code Супер-практикум по использованию и настройке GIT Промышленный ML на больших данных Экспресс-курс «CI/CD или Непрерывная поставка с Docker и Kubernetes» BPMN: Моделирование бизнес-процессов Основы Windows Server
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

Способы представления алгоритмов

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

Словесный способ

Словесное описание алгоритма предполагает наличие некого словесного перечня действий. Пример -- вам говорят что-то типа следующего: «Вычислите Z при условии, что Z = X + Y, когда X равен 0,89, а Y равен 1,286. Полученное значение Z следует возвести в куб и вычислить корень».

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

Все эти примеры можно назвать словесным способом представления. У такого способа есть недостаток: отсутствие наглядности выполнения процесса и чёткой формализации объектов алгоритма.

Формульно-словесный способ

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

Для примера составим формульно-словесный алгоритм вычисления выражения: z=2∙x–(y+6): • вводим значения х и y; • находим сумму (y+6); • находим произведение (2∙x); • вычисляем z как разность уже полученных выше значений: z=2∙x–(y+6); • выводим z как результат вычисления выражения.

Это более компактный и лаконичный метод, он нагляднее, но всё же строго формальным не является.

Табличный способ

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

Screenshot_1-1801-3679bb.png

Графический способ

Этот метод ещё называют способом блок-схем. В данной ситуации каждый этап прохождения алгоритма представляется в виде геометрических фигур — так называемых «блоков», причём конкретная форма фигур зависит от выполняемой операции. Существует стандарт, регламентирующий размеры используемых графических блоков, а также их отображение, функции, формы и взаимное расположение. Направление работы алгоритма показывают линии соединения блоков.

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

Screenshot_2-1801-4820af.png Screenshot_3-1801-f726d8.png

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

Создание блок-схемы алгоритма — важный и нужный этап решения поставленной задачи. Но при некоторых обстоятельствах этот этап можно считать промежуточным, так как в таком виде описанный алгоритм невозможно выполнить средствами ЭВМ. Зато графический способ представления значительно облегчает процесс дальнейшего создания компьютерной программы. О ней ниже.

Программный способ (текстовая запись)

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

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

Пример — простейший алгоритм сложения 2-ч чисел, который записан средствами языка программирования Qbasic:

Screenshot_4-1801-caf811.png

О взаимодополнении способов представления

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

Algo_970x90-1801-545cb2.png

Источники: • http://csaa.ru/sposoby-predstavlenija-algoritmov-2/; • https://infourok.ru/konspekt-sposobi-opisaniya-algoritmov-966802.html.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться