Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




Понятие алгоритма, свойства алгоритмов

Алгоритм – описанная на некотором языке точная конечная система правил, определяющая содержание и порядок действий над некоторыми объектами, строгое выполнение которых дает решение поставленной задачи.

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

Алгоритм характеризуется следующими свойствами:

1. Дискретность (разрывность) – это свойство алгоритма, характеризующее его структуру: каждый алгоритм состоит из отдельных законченных действий, говорят «Делится на шаги».

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

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

4. Массовость – применимость алгоритма ко всем задачам рассматриваемого типа, при любых исходных данных.

5. Формальность – это свойство указывает на то, что любой исполнитель, способный воспринимать и выполнять инструкции алгоритма, действует формально, т.е. отвлекается от содержания поставленной задачи и лишь строго выполняет инструкции. Рассуждать «что, как и почему?» должен разработчик алгоритма, а исполнитель формально (не думая) поочередно исполняет предложенные команды и получает необходимый результат.

Для записи алгоритмов используют различные способы в зависимости от предназначения алгоритма. Рассмотрим следующие способы описания алгоритма:

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

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

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

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

При составлении схем алгоритмов необходимо руководствоваться определенными стандартами – ГОСТ ами.

Например:

Символ процесс обозначает выполнение операции или группы операций, в результате которых изменяется значение, форма представления или расположение данных (записываются все расчёты). Размер а выбирают из ряда 10, 15, 20 мм. Ширина – размер в = 1,5 а.

 
 


Символ пуск (останов) обозначает начало (конец) процесса выполнения программы.

 
 


Символ ввод (вывод) обозначает преобразование данных в форму, пригодную для обработки (ввод) или регистрации результатов обработки (вывод).

 

 
 


Да
Нет
Символ решение (логический выбор) обозначает выбор направления выполнения алгоритма или программы в зависимости от некоторых условий.

       
   

 

 


Символ соединитель связывает символы, расположенные на одном листе.

 

Символ межстраничный соединитель связывает символы, расположенные на разных листах.

 

Описания алгоритма в словесной форме, на псевдокоде или в виде блок-схем допускают некоторый произвол при изображении команд. На практике исполнителями алгоритмов выступают компьютеры. Поэтому алгоритм должен быть записан на «понятном» ему языке, такой формализованный язык называют языком программирования.

Программа – описание структуры алгоритма на языке алгоритмического программирования.




Поделиться с друзьями:


Дата добавления: 2014-10-31; Просмотров: 601; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.