Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Технология разработки алгоритмов




Какими качествами должен обладать хороший алгоритм?

 

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

Но не менее важно, какой ценой это достигается. Речь идет о разумности затрат на его создание.

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

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

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

 

 

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

а) структуры следования или последовательности;

б) структуры ветвления;

в) структуры цикла.

 

                   
 
     
         
 
 
 


 

 
 


 

           
   
     
 
 
 

 


       
 
   
 

 

 


 

       
   
 
 

 

 


 

       
   
 

 

 


Рис.2. Базисные управляющие структуры

 

 

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

а) структура сокращенного ветвления;

б) структура выбора; в) структура цикла с параметром;

г) структура цикла с постусловием (рис. 0.4, соответственно а, б, в, г).

Рис. 0.4. Дополнительные управляющие структуры

 

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

- путем их последовательного соединения - образования последовательных конструкций;

- путем их вложения друг в друга - образования вложенных конструкций.

 

В области автоматизированной обработки данных такой подход называют нисходящим проектированием или проектированием «сверху вниз».

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




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


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


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



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




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