Понятие алгоритма и его свойства. — КиберПедия 

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

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

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

2017-11-16 294
Понятие алгоритма и его свойства. 0.00 из 5.00 0 оценок
Заказать работу

Умение последовательно, четко и ясно излагать свои мысли необходимо каждому человеку. Владение приемами алгоритма позволяет решать и записывать решение многих задач

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

Слово алгоритм произошло от имени великого математика 9 в. Мухаммеда Бен Муссы аль Харезми, который впервые сформулировал правило выполнения арифметических действий с использованием арабских цифр

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

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

  1. дискретность – каждый описанный процесс должен быть расчленен на отдельные элементарные части, т. е. алгоритм состоит из разделенных друг от друга предписаний, только выполнив требования одного предписания можно переходить к следующему. Два предписания одновременно не выполняются.
  2. определенность – каждое предписание алгоритма должно быть точно и однозначно определено, не допуская произвольного толкования
  3. результативность – при точном исполнении всех предписаний алгоритма, процесс должен прекращаться за конечное число шагов, при этом мы должны получить ответ на вопрос поставленной задачи или получить ответ на невозможность ее решения.
  4. массивность – алгоритм должен быть пригоден для решения целого класса задач данного типа. Например, алгоритм решения квадратного уравнения
  5. инвариантность – по отношению к исполнителю алгоритм должен быть неизменным при выполнении предписанных ему действий человека или машины.

 

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

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

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

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

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

 

Название Блок-схема Пояснение
Пуск-останов Начало, конец алгоритма, вход и выход в подпрограмму
Процесс   Вычислительное действие или последовательность действий
Решение Проверка условий
Модификация Начало цикла
Предопределён­ный процесс Вычисления по подпрограмме
Ввод-вывод Ввод-вывод в общем виде

 

Блок «процесс» применяется для обозначения действия или последо­вательности действий, изменяющих значение, форму представления или размещения данных. Для улучшения наглядности схемы несколько от­дельных блоков обработки можно объединять в один блок. Представле­ние отдельных операций достаточно свободно.Блок «решение» используется для обозначения переходов управления по условию. В каждом блоке «решение» должны быть указаны вопрос, условие или сравнение, которые он определяет.Блок «модификация» используется для организации циклических кон­струкций. Внутри блока записывается параметр цикла, для которого ука­зываются его начальное значение, граничное условие и шаг изменения значения параметра для каждого повторения.Блок «предопределённый процесс» используется для указания обращении к вспомогательным алгоритмам, существующим автономно в виде некоторых самостоятельных модулей, и для обращений к библиотечным подпрограммам.

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

В псевдокоде не приняты строгие синтаксические правила для запи­си команд, присущие формальным языкам, что облегчает запись алгорит­ма на стадии его проектирования. Однако в псевдокоде обычно имеют­ся некоторые конструкции, присущие формальным языкам. В псевдокоде, так же, как и в формальных языках, есть служебные слова, смысл ко­торых однозначно определён. Например, алгоритмы на алгоритмическом языке записываются с помощью служебных слов, представленных в таб­лице 1.7.

Таблица 1.7. Служебные слова алгоритмического языка.

алг(алгоритм) сим (символьный) дано да нет
арг(аргумент) лит (литерный) надо для при
рез(результат) лог(логический) если от до
нач(начало) таб (таблица) то знач выбор
кон(конец) нц(начало цикла) иначе и или
цел (целый) кц (конец цикла) всё ввод вывод
вещ (вещественный) длин(длина) пока утв не

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

алг название алгоритма (аргументы и результаты)

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

надо цель выполнения алгоритма

нач описание промежуточных величин

последовательность команд (тело алгоритма)

кон. Часть алгоритма от слова алг до слова нач называется заголовком, а часть, заключённая между словами нач и кон — телом алгоритма.

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

Классификация алгоритмов.

Алгоритмы машинной графики можно разделить на два уровня: нижний и верхний. Группа алгоритмов нижнего уровня предназначена для реализации графических примитивов (линий, окружностей, заполнений и т.п.). Эти алгоритмы или подобные им воспроизведены в графических библиотеках языков высокого уровня (BGI в Турбо - Паскале) или реализованы аппаратно в графических процессорах рабочих станций (Silicon Graphics и др.). Среди алгоритмов нижнего уровня можно выделить следующие группы: Простейшие в смысле используемых математических методов и отличающиеся простотой реализации. Как правило, такие алгоритмы не являются наилучшими по объему выполняемых вычислений или требуемым ресурсам памяти. Поэтому можно выделить вторую группу алгоритмов, использующих более сложные математические предпосылки (но часто и эвристические) и отличающихся большей эффективностью. К третьей группе следует отнести алгоритмы, которые могут быть без больших затруднений реализованы аппаратно (допускающие распараллеливание, рекурсивные, реализуемые в простейших командах). В эту группу могут попасть и алгоритмы, представленные в первых двух группах. Наконец, к четвертой группе можно отнести алгоритмы со специальным назначением (например, для устранения лестничного эффекта). К алгоритмам верхнего уровня относятся в первую очередь алгоритмы удаления невидимых линий и поверхностей. Задача удаления невидимых линий и поверхностей продолжает оставаться центральной в машинной графике. От эффективности алгоритмов, позволяющих решить эту задачу, зависят качество и скорость построения трехмерного изображения. К задаче удаления невидимых линий и поверхностей примыкает задача построения (закрашивания) полутоновых (реалистических) изображений, т.е. учета явлений, связанных с количеством и характером источников света, учета свойств поверхности тела (прозрачность, преломление, отражение света).


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

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

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

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.013 с.