72814

Алгоритм, его свойства. Виды алгоритмов. Формы записи алгоритмов

Доклад

Информатика, кибернетика и программирование

Виды алгоритмов. Формы записи алгоритмов. Решение задач на компьютере основано на понятии алгоритма. Алгоритм - это точное предписание определяющее вычислительный процесс ведущий от варьируемых начальных данных к исходному результату.

Русский

2014-11-30

53 KB

5 чел.

Алгоритм, его свойства. Виды алгоритмов. Формы записи алгоритмов.


Решение задач на компьютере основано на понятии алгоритма. Алгоритм – это точное предписание, определяющее вычислительный процесс, ведущий от варьируемых начальных данных к исходному результату.

Алгоритм означает точное описание некоторого процесса, инструкцию по его выполнению. Разработка алгоритма является сложным и трудоемким процессом. Алгоритмизация – это техника разработки (составления) алгоритма для решения задач на ЭВМ.

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

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

  1.  
    Наличие ввода исходных данных.
  2.  
    Наличие вывода результата выполнения.
  3.  
    Однозначность (компьютер «понимает» только однозначные инструкции).
  4.  
    Общность – алгоритм предназначен для решения некоторого класса задач.
  5.  
    Корректность – алгоритм должен давать правильное решение задачи.
  6.  
    Конечность – решение задачи должно быть получено за конечное число шагов.
  7.  
    Эффективность – для решения задачи должны использоваться ограниченные ресурсы компьютера (процессорное время, объем оперативной памяти и т.д.).


Свойства алгоритма:

  1.  
    Массовость – алгоритм должен описывать круг однотипных задач, исходные данные которых могут изменяться в определенных пределах.
  2.  
    Детерминированность – это обусловленность всех шагов алгоритма потребностью решения данных задач. Свойство детерминированности выражается в том, что при заданных значениях параметров алгоритм выполняется формально, т.е. строго выполняется последовательностьдействий до появления результата.
  3.  
    Понятность – предписания алгоритма должны быть сформулированы так, чтобы они понимались одинаково разработчиком и исполнителем, т.е. они должны быть однозначно понятны.
  4.  
    Дискретность – четкое разделение всего пути решения задачи на отдельные этапы (шаги) так, чтобы ход выполнения алгоритма проходил поэтапно, вовремя корректируя действия исполнителя.
  5.  
    Результативность – точное выполнение предписаний алгоритма должно привести к результату за n шагов, если правильно разработана исходная модель и сам алгоритм.


Всякий человек при планировании деятельности обязательно выполняет две операции:

  1.  
    Оценивает исходные данные (создает исходную модель).
  2.  
    Прогнозирует результат (прогнозирует какую-то конечную модель).


Суть решения задачи в переходе от исходной модели к прогнозируемому результату, через конечное число действий.

Несмотря на многообразие алгоритмов все они строятся из 3-х типов алгоритмических структур.

^ Линейным алгоритмом называется алгоритмом, в котором все указанные в последствии действия исполняются и притом только один раз.

Разветвляющимся алгоритмом называется алгоритм, в котором выполняется одна из ветвей действий при заданных значениях параметра.

Циклический алгоритм – алгоритм в котором какая-то совокупность действий повторяется несколько раз при изменяющихся значениях параметра.
^

Изобразительные средства для описания (представление) алгоритма


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

  •  
    Словесно- формульное описание


Блок-схема (схема графических символов)

  •  
    Алгоритмические языки


Операторные схемы

  •  
    Псевдокод


Для записи алгоритма существует общая методика:

  •  
    Каждый алгоритм должен иметь имя, которое раскрывает его смысл.


Необходимо обозначить начало и конец алгоритма.


Описать входные и выходные данные.

  •  
    Указать команды, которые позволяют выполнять определенные действия над выделенными данными 


Общий вид алгоритма

Алгоритм: Название алгоритма

Описание данных

Начало

Команды

Конец

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

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

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

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

Основные блоки.(Рис.1)

Порядок выполнения этапов указывается стрелками, соединяющими блоки. Геометрические фигуры размещаются сверху вниз и слева на право. Нумерация блоков производится в порядке их размещения в схеме.

Алгоритмические языки  - это специальное средство, предназначенное для записи алгоритмов в аналитическом виде. Алгоритмические языки близки к математическим выражениям и к естественным языкам. Каждый алгоритмический язык имеет свой словарь. Алгоритм, записанный на алгоритмическом языке, выполняется по строгим правилам этого конкретного языка.

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

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

Псевдокод – система команд абстрактной машины. Этот способ записи алгоритма с помощью операторов близких к алгоритмическим языкам.
^

Принципы разработки алгоритмов и программ


Типы алгоритмических процессов

По структуре выполнения алгоритмы и программы делятся на три вида:

  •  
    Линейные


Ветвящиеся

  •  
    Циклические


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

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

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

Такие задачи можно описать с помощью алгоритмов разветвляющейся структуры. В таких алгоритмах выбор направления продолжения вычисления осуществляется по итогам проверки заданного условия. Ветвящиеся процессы описываются оператором IF (условие). 

(Рис.2)

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

(Рис.3) (Рис.4)
Особенностью первой схемы является то, что проверка условия выхода из цикла проводится до выполнения тела цикла. В том случае, если условие выхода из цикла выполняется, то тело цикла не выполняется ни разу. 

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

Существуют циклы с известным числом повторений и итерационные циклы. При итерационном цикле выход из тела цикла, как правило, происходит при достижении заданной точности вычисления.

Алгоритм любой сложности может быть представлен комбинацией трех базовых структур:

  •  
    следование;


ветвление (в полной и сокращенной форме);

  •  
    цикл (с предусловием или постусловием).


Характерной особенностью этих структур является наличие у них одного входа и одного выхода. 

PAGE   \* MERGEFORMAT 6


 

А также другие работы, которые могут Вас заинтересовать

5527. Сельское хозяйство Болгарии 57.5 KB
  Сельское хозяйство Болгарии Республика Болгария, государство в Восточной Европе. Болгария расположена в восточной части Балканского полуострова. Граничит на севере с Румынией - вдоль Дуная, на юге - с Грецией и Турцией, на западе...
5528. Процесс учета вложений в во внеоборотные активы действующей организации на примере ООО Металлострой 156 KB
  В настоящее время основной и важной задачей Российского Правительства и всех властных структур является развитие экономики нашей страны и, прежде всего производства. А согласно мнению многих специалистов для этого необходимы долгосрочные...
5529. Поверочный тепловой расчёт парового котла 1.65 MB
  Описание котла. Схема компоновки поверхностей нагрева Проектирование котельной установки электростанции предполагает выполнение теплового, гидродинамического и прочностного расчётов котла, аэродинамического расчёта газовоздушного тракта с выбор...
5530. Проектирование гибридной интегральной микросхемы 337 KB
  Реализация принципов, идей, методов полупроводниковой микроэлектроники привела к созданию БИС и СБИС, представляющие собой целые устройства и даже системы, размещенные в одном полупроводниковом кристалле. Однако не все устройства можно изго...
5531. Женщина как объект дискриминации 384.5 KB
  Проблема насилия и женщин в современном Российском обществе на сегодняшний день весьма актуальна. Насилие в отношении женщин проявляется во всех сферах их жизнедеятельности, включая работу и семью. Одной из основных форм насилия является...
5532. Основные функции предприятия элеваторной промышленности 102.5 KB
  Основные функции предприятия элеваторной промышленности Уборка зерновых культур Уборка зерновых культур. Зерновые культуры убирают прямым комбинированием, раздельным комбайнированием и раздельным способом. Прямое комбайнирование заключается в том, ч...
5533. Невербальные средства коммуникации 69.5 KB
  Невербальные средства коммуникации. Понятие о средствах невербальной коммуникации и общая их характеристика. В нашем внешнем поведении проявляется то многое, что у нас происходит и есть внутри. Только эти проявления нужно уметь распознать. За отдель...
5534. Основи наукових досліджень та організація науково-дослідних та дослідно-конструкторських робіт 1.31 MB
  Ми живемо у вік науково-технічної революції, масового застосування інформатики, комп'ютерної та мікропроцесорної техніки. Кажуть, що провідні країни світу вступили в еру постпромислового розвитку, тобто в еру інформаційних технологій та і...
5535. Расчет и конструирование фундамента 560 KB
  Введение. Курсовой проект разработан в соответствии с заданием и представляет собой расчёт и конструирование фундамента.Проект состоит из пояснительной записки и графической части...