Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Методы проектирования алгоритмов.



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

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

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

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

 
 

 


2. циклический. Используется для представления циклических алгоритмов. Описывается языком графических символов одним из двух способов:

       
 
   

 


3. конструкция принятия двоичного решения. Применяется для представления разветвляющихся алгоритмов. Описывается языком графических символов следующим образом:

 
 


 

Способы описания алгоритмов. Основы графического способа.

Алгоритмы можно записывать не только при помощи слов. В настоящее время различают несколько способов описания алгоритмов:

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

Например: Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел. Алгоритм может быть следующим: задать два числа; если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма; определить большее из чисел; заменить большее из чисел разностью большего и меньшего из чисел; повторить алгоритм с шага

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

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

3. Графический, т.е. с помощью блок-схем.

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

4… Программный, т.е. тексты на языках программирования.

Типовые структуры алгоритмов. Основные виды вычислительных процессов. Примеры.

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

Тело цикла
Действие 2
Действие 1
Действие n
Действие 2
Действие 1
Линейный алгоритм Разветвляющийся алгоритм Циклический алгоритм

 

нет да нет да

 

Линейным называется такой вычислительный процесс, при котором все этапы решения задачи выполняются в естественном порядке следования записи этих этапов.

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

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


Поделиться:



Последнее изменение этой страницы: 2017-03-14; Просмотров: 1452; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.016 с.)
Главная | Случайная страница | Обратная связь