Информатика
Алгоритмы и способы их описания.
Алгоритм — это система точных и понятных предписаний о содержании и последовательности выполнения конечного числа действий, необходимых для решения любой задачи данного типа.
Примеры: правила сложения, умножения, решения алгебраических уравнений и т.п.
1.Универсальность (массовость) — применимость алгоритма к различным наборам исходных данных.
2.Дискретность — процесс решения задачи по алгоритму разбит на отдельные действия.
3.Конечность — каждое из действий и весь алгоритм в целом обязательно завершаются.
4.Результативность — по завершении выполнения алгоритма обязательно получается конечный результат.
5.Выполнимость (эффективность) — результата алгоритма достигается за конечное число шагов.
6.Детерминированность (определенность) — алгоритм не должен содержать предписаний, смысл которых может восприниматься неоднозначно. Т.е. одно и то же предписание после исполнения должно давать один и тот же результат.
7.Последовательность – порядок исполнения команд должен быть понятен исполнителю и не должен допускать неоднозначности.
1. вычислительные алгоритмы , работающие со сравнительно простыми видами данных, такими как числа и матрицы, хотя сам процесс вычисления может быть долгим и сложным;
2. информационные алгоритмы , представляющие собой набор сравнительно простых процедур, работающих с большими объемами информации (алгоритмы баз данных);
3. управляющие алгоритмы , генерирующие различные управляющие воздействия на основе данных, полученных от внешних процессов, которыми алгоритмы управляют.
По типу передачи управления алгоритмы бывают: основные (главные выполняемые программы) и вспомогательные (подпрограммы).
Для задания алгоритма необходимо описать следующие его элементы:
1.набор объектов, составляющих совокупность возможных исходных данных, промежуточных и конечных результатов;
3.правило непосредственной переработки информации (описание последовательности действий);
5.правило извлечения результатов.
Способы описания алгоритмов.
Символьный, когда алгоритм описывается с помощью специального набора символов (специального языка).
Словесная форма записи алгоритмов обычно используется для алгоритмов, ориентированных на исполнителя-человека. Команды такого алгоритма выполняются в естественной последовательности, если не оговорено противного.
Графическая запись с помощью блок-схем осуществляется рисованием последовательности геометрических фигур, каждая из которых подразумевает выполнение определенного действия алгоритма. Порядок выполнения действий указывается стрелками. Графическая запись алгоритма имеет ряд преимуществ: каждая операция вычислительного процесса изображается отдельной геометрической фигурой и графическое изображение алгоритма наглядно показывает разветвления путей решения задачи в зависимости от различных условий, повторение отдельных этапов вычислительного процесса и другие детали.
Правила создания блок – схем:
1.Линии, соединяющие блоки и указывающие последовательность связей между ними, должны проводится параллельно линиям рамки.
2.Стрелка в конце линии может не ставиться, если линия направлена слева направо или сверху вниз.
3.В блок может входить несколько линий, то есть блок может являться преемником любого числа блоков.
4.Из блока (кроме логического) может выходить только одна линия.
5.Логический блок может иметь в качестве продолжения один из двух блоков, и из него выходят две линии.
6.Если на схеме имеет место слияние линий, то место пересечения выделяется точкой. В случае, когда одна линия подходит к другой и слияние их явно выражено, точку можно не ставить.
7.Схему алгоритма следует выполнять как единое целое, однако в случае необходимости допускается обрывать линии, соединяющие блоки.
В линейном алгоритме операции выполняются последовательно, в порядке их записи. Каждая операция является самостоятельной, независимой от каких-либо условий. На схеме блоки, отображающие эти операции, располагаются в линейной последовательности.
В алгоритме с ветвлением предусмотрено несколько направлений (ветвей). Каждое отдельное направление алгоритма обработки данных является отдельной ветвью вычислений. Направление ветвления выбирается логической проверкой, в результате которой возможны два ответа:
1.«да» — условие выполнено.
2.«нет» — условие не выполнено.
Циклические алгоритмы содержат цикл – это многократно повторяемый участок алгоритма.Различают циклы с предусловием и постусловием.Также циклы бывают детерминированные и итерационные.Цикл называется детерминированным, если число повторений тела цикла заранее известно или определено. Цикл называется итерационным, если число повторений тела цикла заранее неизвестно, а зависит от значений параметров (некоторых переменных), участвующих в вычислениях.
Источник
Средства представления алгоритмов
Процесс составления алгоритмов называют алгоритмизацией. Алгоритм можно представить различными способами: с помощью графического или текстового описания, в виде таблицы значений.
Графический способ представления алгоритмов имеет ряд преимуществ благодаря визуальности процесса решения задачи. Алгоритмы, представленные графическими средствами, получили название визуальные алгоритмы или блок – схемы .
Текстовое описание алгоритма является достаточно компактным и может быть реализовано на абстрактном или реальном языке программирования в виде программы для ЭВМ. Таблицы значений представляют алгоритм неявно, как некоторое преобразование конкретных исходных данных в выходные.
Табличный способ описания алгоритмов. Применяют для проверки правильности функционирования алгоритма на конкретных тестовых наборах входных данных, которые вместе с результатами выполнения алгоритма фиксируются в «таблицах трассировки».
Все три способа представления алгоритмов являются взаимодополняющими. На этапе проектирования наилучшим является графическое представление, на этапе проверки алгоритма — табличное описание, на этапе применения — текстовая запись в виде программы.
Визуальное представление алгоритмов
При проектировании визуальных алгоритмов используют специальные графические элементы, называемые графическими блоками, которые представ-лены в таблице. Существует Государственный стандарт (ГОСТ 19.002-80 и ГОСТ 19.003-80), определяющий правила выполнения схем и обозначения для отдельных операций.
Правила проектирования визуальных алгоритмов:
• В начале алгоритма должны быть блоки ввода значений входных данных.
• После ввода значений входных данных следуют блоки обработки и блоки условия.
• В конце алгоритма должны располагаться блоки вывода значений выходных данных.
• В алгоритме должен быть только один блок начала и один блок окончания.
• Связи между блоками указываются направленными или ненаправленными линиями.
• Данные, вычислительные формулы, логические выражения располагают внутри соответствующих блоков.
• Блоки могут сопровождаться комментариями в виде выносок.
Графическое представление алгоритмов имеет практическое значение не только для программистов. Те же информационные схемы (инфографика) используются журналистами для визуализации данных. Структурные схемы последовательности монтажа полезны для сборщиков мебели, например. Та же визуализация алгоритма трассировки (алгоритм Ли) может быть полезна для конструирования печатных плат, особенно когда требуется срочное изготовление таких плат по требованиям заказчика.
Источник
Средства описания алгоритмов
Алгоритм моделирует решение задачи в виде точно определенной последовательности действий для некоторого исполнителя по преобразованию исходных данных в результирующие.
Для его описания используется алгоритмический язык – набор символов и правил образования и истолкования конструкций из этих символов для записи алгоритмов.
Основными изобразительными средствами алгоритмов являются следующие способы их записи:
Словесный способ предполагает словесное (без формул и таблиц) описание алгоритма. Этим способом можно описывать алгоритмы с любой степенью детализации.
При этом способе отсутствует наглядность вычислительного процесса, т.к. нет достаточной формализации.
На рисунке 3.1 приведен пример словесной записи алгоритма. Пусть задан массив чисел. Требуется проверить, все ли числа принадлежат заданному интервалу. Интервал задается границами А и В.
Рисунок 3.1. Пример словесной записи алгоритма
Никаких правил составления словесного описания не существует. Запись алгоритма осуществляется в произвольной форме на естественном, например, русском языке. Этот способ описания не имеет широкого распространения, так как допускает неоднозначность толкования при описании некоторых действий.
Формульно-словесный способ более компактный. Он предполагает задание инструкций с использованием математических символов и выражений в сочетании со словесными пояснениями.
Например, требуется написать алгоритм вычисления площади треугольника по трем сторонам (рисунок 3.2).
Рисунок 3.2. Пример формульно-словесной записи алгоритма
При использовании этого способа может быть достигнута любая степень детализации, более наглядно, но не строго формально.
Графический способ получил наибольшее распространение. В этом способе алгоритм представляется в виде схемы, состоящей из элементов символов, отражающих отдельные операции технологического процесса обработки данных и отдельные вычислительные операции.
Каждый этап процесса переработки данных представляется в виде геометрических фигур (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций (таблица 3.1).
Таблица 3.1 Основные конструкции, применяемые для построения блок-схем
Оператор блок-схемы | Описание |
Блок, характеризующий начало/конец алгоритма | |
Блок, предназначенный для описания отдельных действий (процесс) | |
Блок, предназначенный для обращения к вспомогательным алгоритмам (предопределенный процесс) | |
Блок ввода/вывода | |
Блок «решение» (проверка условия или условный блок) | |
Блок, описывающий цикл | |
Соединительные блоки |
Алгоритмы, представленные графическими средствами, получили название визуальные алгоритмы.
Общими правилами при проектировании визуальных алгоритмов являются следующие:
— В начале алгоритма должны быть блоки ввода значений входных данных.
— После ввода значений входных данных могут следовать блоки обработки и блоки условия.
— В конце алгоритма должны располагаться блоки вывода значений выходных данных.
— В алгоритме должен быть только один блок начала и один блок окончания.
— Связи между блоками указываются направленными или ненаправленными линиями.
Псевдокод позволяет формально изображать логику программы, не заботясь при этом о синтаксических особенностях конкретного языка программирования. Обычно представляет собой смесь операторов языка программирования и естественного языка. Является средством представления логики программы, которое можно применять вместо блок-схемы (рисунок 3.3).
Рисунок 3.3. Запись алгоритма в виде псевдокода
Строгих синтаксических правил для записи псевдокода не существует, Это облегчает запись алгоритма при проектировании и позволяет описать алгоритм, используя любой набор команд. Однако в псевдокоде обычно используются некоторые конструкции, присущие формальным языкам, что облегчает переход от псевдокода к записи алгоритма на языке программирования. Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором используемых слон и конструкций.
Таблицы значений представляют алгоритм неявно, как некоторое преобразование конкретных исходных данных в выходные. Табличный способ описания алгоритмов может быть с успехом применен для проверки правильности функционирования разработанного алгоритма на конкретных тестовых наборах входных данных, которые вместе с результатами выполнения алгоритма фиксируются в таблицах трассировки. Данный способ носит, в основном, вспомогательный характер.
Операторный способ предполагает представление алгоритма в виде последовательности операторов. Возможность рассматривать дискретный алгоритм, являющийся совокупностью элементарных предписаний (инструкций), как совокупность элементарных операторов, следует из того, что каждое элементарное предписание можно считать оператором. Для описания элементарных операторов вводятся обозначения, определяемые языком программирования.
Таким образом, все способы представления алгоритмов можно считать взаимодополняющими друг друга. Например, на этапе проектирования алгоритмов наилучшим способом является графическое представление, на этапе проверки алгоритма — табличное описание, на этапе применения — запись в виде программы.
Статьи к прочтению:
Такое описание Ада вы услышите впервые | Умар аль-Банна
Похожие статьи:
Для записи алгоритмов используют различные способы в зависимости от предназначения алгоритма. Рассмотрим следующие способы описания алгоритма:…
Для разработки структуры программы удобнее пользоваться записью алгоритма в виде блок-схемы (в англоязычной литературе используется термин flow-chart)….
Источник
Средства описания алгоритмов
Алгоритм моделирует решение задачи в виде точно определенной последовательности действий для некоторого исполнителя по преобразованию исходных данных в результирующие.
Для его описания используется алгоритмический язык – набор символов и правил образования и истолкования конструкций из этих символов для записи алгоритмов.
Основными изобразительными средствами алгоритмов являются следующие способы их записи:
Словесный способ предполагает словесное (без формул и таблиц) описание алгоритма. Этим способом можно описывать алгоритмы с любой степенью детализации.
При этом способе отсутствует наглядность вычислительного процесса, т.к. нет достаточной формализации.
На рисунке 3.1 приведен пример словесной записи алгоритма. Пусть задан массив чисел. Требуется проверить, все ли числа принадлежат заданному интервалу. Интервал задается границами А и В.
Рисунок 3.1. Пример словесной записи алгоритма
Никаких правил составления словесного описания не существует. Запись алгоритма осуществляется в произвольной форме на естественном, например, русском языке. Этот способ описания не имеет широкого распространения, так как допускает неоднозначность толкования при описании некоторых действий.
Формульно-словесный способ более компактный. Он предполагает задание инструкций с использованием математических символов и выражений в сочетании со словесными пояснениями.
Например, требуется написать алгоритм вычисления площади треугольника по трем сторонам (рисунок 3.2).
Рисунок 3.2. Пример формульно-словесной записи алгоритма
При использовании этого способа может быть достигнута любая степень детализации, более наглядно, но не строго формально.
Графический способ получил наибольшее распространение. В этом способе алгоритм представляется в виде схемы, состоящей из элементов символов, отражающих отдельные операции технологического процесса обработки данных и отдельные вычислительные операции.
Каждый этап процесса переработки данных представляется в виде геометрических фигур (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций (таблица 3.1).
Таблица 3.1 Основные конструкции, применяемые для построения блок-схем
Оператор блок-схемы | Описание |
| Блок, характеризующий начало/конец алгоритма |
| Блок, предназначенный для описания отдельных действий (процесс) |
| Блок, предназначенный для обращения к вспомогательным алгоритмам (предопределенный процесс) |
| Блок ввода/вывода |
| Блок «решение» (проверка условия или условный блок) |
| Блок, описывающий цикл |
| Соединительные блоки |
Алгоритмы, представленные графическими средствами, получили название визуальные алгоритмы.
Общими правилами при проектировании визуальных алгоритмов являются следующие:
— В начале алгоритма должны быть блоки ввода значений входных данных.
— После ввода значений входных данных могут следовать блоки обработки и блоки условия.
— В конце алгоритма должны располагаться блоки вывода значений выходных данных.
— В алгоритме должен быть только один блок начала и один блок окончания.
— Связи между блоками указываются направленными или ненаправленными линиями.
Псевдокод позволяет формально изображать логику программы, не заботясь при этом о синтаксических особенностях конкретного языка программирования. Обычно представляет собой смесь операторов языка программирования и естественного языка. Является средством представления логики программы, которое можно применять вместо блок-схемы (рисунок 3.3).
Рисунок 3.3. Запись алгоритма в виде псевдокода
Строгих синтаксических правил для записи псевдокода не существует, Это облегчает запись алгоритма при проектировании и позволяет описать алгоритм, используя любой набор команд. Однако в псевдокоде обычно используются некоторые конструкции, присущие формальным языкам, что облегчает переход от псевдокода к записи алгоритма на языке программирования. Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором используемых слон и конструкций.
Таблицы значений представляют алгоритм неявно, как некоторое преобразование конкретных исходных данных в выходные. Табличный способ описания алгоритмов может быть с успехом применен для проверки правильности функционирования разработанного алгоритма на конкретных тестовых наборах входных данных, которые вместе с результатами выполнения алгоритма фиксируются в «таблицах трассировки». Данный способ носит, в основном, вспомогательный характер.
Операторный способ предполагает представление алгоритма в виде последовательности операторов. Возможность рассматривать дискретный алгоритм, являющийся совокупностью элементарных предписаний (инструкций), как совокупность элементарных операторов, следует из того, что каждое элементарное предписание можно считать оператором. Для описания элементарных операторов вводятся обозначения, определяемые языком программирования.
Таким образом, все способы представления алгоритмов можно считать взаимодополняющими друг друга. Например, на этапе проектирования алгоритмов наилучшим способом является графическое представление, на этапе проверки алгоритма — табличное описание, на этапе применения — запись в виде программы.
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет
Источник