Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Алгоритмы, основные свойства.

Алгоритм - точное и понятное предписание исполнителю совершить последовательность действий, направленных на решение поставленной задачи.

Основные свойства алгоритмов следующие:

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

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

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

Результативность (или конечность). Это свойство состоит в том, что алгоритм должен приводить к решению задачи за конечное число шагов.

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

На практике наиболее распространены следующие формы представления алгоритмов:

· словесная (записи на естественном языке);

· графическая (изображения из графических символов);

· псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);

· программная (тексты на языках программирования).

Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке.

Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным.

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

Такое графическое представление называется схемой алгоритма или блок-схемой.

Псевдокод представляет собой систему обозначений и правил, предназначенную для единообразной записи алгоритмов.

Он занимает промежуточное место между естественным и формальным языками.

Различают безусловные и условные типы блоков.

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

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

В графическом представлении каждый блок алгоритма имеет вид определённой геометрической фигуры.

Название блока Блок Отображаемая функция
  Блок вычислений (процесс) Вычислительное действие или последовательность вычислительных действий
  Логический блок (решение) Выбор направления выполнения алгоритма в зависимости от некоторых условий (условия)
  Блоки ввода- вывода Общее обозначение ввода или вывода данных (в независимости от физического носителя)
  Начало – конец (вход – выход) Начало или конец программы, останов, вход или выход в подпрограммах
  Блок модификации (заголовок цикла) Выполнение действий, изменяющих пункты алгоритма
  Соединитель Указание связи между прерванными линиями потока информации в пределах одной страницы

Схема - это графическое представление алгоритма, дополненное элементами словесной записи.

При составлении схем алгоритмов соблюдаются следующие правила:

1. Каждый блок имеет единственную точку входа, кроме блока пуска, который не имеет входа;

2. Каждый безусловный блок имеет единственную точку выхода, кроме блока останова, который не имеет ни одной точки выхода;

3. Условный блок имеет два или в отдельных случаях три точки выхода;

4. Выход условного блока можно пометить условиями (например, ДА, НЕТ, >0, =0, <0);

5. Линии, идущие на вход некоторого блока, могут соединяться. Это соответствует переходу на конкретный единственный этап вычислений после нескольких других этапов;

6. Линия, исходящая из входной точки блока, не может разветвляться на несколько направлений. Этим исключается неоднозначность перехода между блоками.

Можно выделить три типа алгоритмов: арифметические (линейные, вычислительные), ветвящиеся и циклические.

Арифметические алгоритмы.

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

Ветвящиеся алгоритмы.

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

Циклические алгоритмы.

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...