69746

Структурне програмування

Домашняя работа

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

Мета структурного програмування створювати програми чіткої структури тобто такі які можна було б без великих затрат розуміти супроводжувати і модифікувати без участі авторів оскільки на сучасному етапі затрати на супровід і модифікацію програм становлять...

Украинкский

2014-10-09

35.5 KB

4 чел.

Самостійне вивчення

Тема 1: Структурне програмування

План:

  1.  Компоненти структурного програмування
  2.  Структурне програмування

Компоненти структурного програмування

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

Як уже зазначено, методологією сучасного програмування є програмування структурне. Дехто вважає, що це просто програмування згідно з чіткими канонами, інші - що це написання підпрограм (модулів) та об'єднання їх у програму, ще інші -що це програмування "без goto". Можна сказати, що структурне програмування - це проектування, написання і тестування програм згідно з наперед визначеною дисципліною.

Мета структурного програмування - створювати програми чіткої структури, тобто такі, які можна було б без великих затрат розуміти, супроводжувати і модифікувати без участі авторів, оскільки на сучасному етапі затрати на супровід і модифікацію програм становлять близько 70% усіх затрат на їхнє створення та експлуатацію.

Структурний підхід до програмування передбачає таке:

низхідне проектування (проектування зверху вниз);

модульне програмування;

структурне кодування.

Розглянемо реальну економічну задачу керування запасами на підприємстві (рис. 1.1). Розв'язати таку задачу можна двома шляхами - шляхом висхідного та низхідного проектування. З'ясуємо недоліки першого підходу і переваги другого.

У випадку висхідного проектування спочатку складають програми найнижчого рівня: витрати, прибуток, звіт про стан запасів тощо, причому їх можуть розробляти різні програмісти. Для відлагодження цих програм потрібно складати додаткові програми, що передаватимуть їм інформацію, яка повинна була б надходити від програм вищого рівня. Відлагоджувальні програми повинні моделювати середовище, в якому працюватиме програма нижчого рівня. Хоча такі програми й нескладні, однак вони не входять у кінцеву програму, тому затрати на їхню розробку є втратними.

Коли всі програми найнижчого рівня створені, розробляють програми наступного вищого рівня. Для перевірки їх комбінують з раніше розробленими модулями нижчого рівня, виявляючи похибки і недоробки за допомогою відповідних налагоджувальних програм. Так триває доти, доки не буде створено програму найвищого рівня.

Однак часто трапляється, що після цього всі модулі разом не працюють. Причини такої ситуації можуть бути різними. Наприклад, доки складали налагоджувальні програми, специфікації для решти програм могли змінитися; або ж налагоджувальні програми недостатньо адекватно моделюють середовище програм. Крім того, будь-які додаткові зміни в програмах вищого порядку зумовлюють потребу внесення додаткових змін у раніше розроблені і налагоджені програми нижчого рівня або навіть їхнє перепрограмування.

У разі низхідної розробки проектування і програмування ведуть зверху вниз. Так вдається уникнути проблем, характерних для висхідної розробки. Відповідність специфікацій перевіряють до переходу на нижчий рівень. Налагоджують програми постійно під час розробки зверху вниз, усі розроблені модулі є в кінцевій програмі. Під час розробки замість програм нижнього рівня можна використовувати так звані заглушки. Вони дуже прості і можуть містити тільки вхідний і вихідний оператори та повідомлення про виконання. Детальніше метод низхідного проектування розглянемо нижче.

рис 1.1

Структурне програмування

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

одним входом;

одним виходом;

не містять недосяжних фрагментів програми (або точок);

не містять безконечних циклів. У цьому розумінні головні структури є простими програмами.

У мові Паскаль головні структури виконують оператори: послідовність - складений оператор, розгалуження - умовний оператор if-then-else, повторення - оператор циклу з передумовою while-do.

За допомогою головних структур програмування можна складати програми без операторів goto, тому структурне програмування часто називають програмуванням "без goto". Однак таке тлумачення вузьке, оскільки ця ситуація є лише наслідком використання головних структур, як і те, що потік керування буде скерований тільки вниз, тобто оператори будуть виконуватись тільки в порядку їх запису, враховуючи і пропуски (структура if-then-else). Головна ж перевага структурного програмування - це зменшення кількості помилок унаслідок застосування тільки допустимих структур.


 

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

16786. Золото и серебро Латинской Америки 29.5 KB
  Золото и серебро Латинской Америки. В Латинской Америке ежегодно производится примерно 300 т золота 15 мирового производства и свыше 4200 т серебра 23 мирового производства. Крупнейшим производителем золота является Перу 130 т больше всего производят серебра Мексика 2744...
16787. Золото 1.09 MB
  Золото Введение Золото сыграло большую роль в развитии капитализма. В современных условиях оно занимает важное место в капиталистической экономике и международных отношениях служит символом богатства и власти. Химический элемент номер 79 тяжелый блестящий
16788. ЗОЛОТОДОБЫЧА в районе Челябинска 172 KB
  ЗОЛОТОДОБЫЧА в районе Челябинска Датой офиц. открытия и начала З. на Урале считается 1745. Однако задолго до этого племена и народы населявшие его терр. уже знали и добывали золото. Точных указаний о древней З. на Юж. Урале пока н
16789. Золотой запас 65.5 KB
  Золотой запас Золотым запасом называют золото в виде российских и иностранных монет которые находились в хранилищах финансовых ведомств Российской империи. В запас входили так же слитки золотые самородки и кружки без аверса и реверса. До 1914 года в Росси дейст...
16790. ЗОЛОТО НЕДР РОССИИ МИФЫ, РЕАЛИИ, ПРОБЛЕМЫ 225.5 KB
  И.Б.Флеров ЗОЛОТО НЕДР РОССИИ МИФЫ РЕАЛИИ ПРОБЛЕМЫ Два обстоятельства побудили меня взяться за перо обращаясь к довольно сложной для России проблеме добычи золота. Первое заключается в том что несмотря на неуклонно развивающиеся рыночные отношения в стране в среде...
16791. ИНОСТРАННЫЕ КОМПАНИИ В РОССИЙСКОЙ ЗОЛОТОДОБЫЧЕ 148.5 KB
  ИНОСТРАННЫЕ КОМПАНИИ В РОССИЙСКОЙ ЗОЛОТОДОБЫЧЕ Автор: Кочетков А. Я. кандидат геологоминералогических наук ИАЦ Минерал ФГУНПП Аэрогеология Несмотря на то что участие зарубежных промышленных и финансовых компаний в экономической жизни современной Росс...
16792. КИНЕТИЧЕСКИЕ ЗАКОНОМЕРНОСТИ ИЗМЕЛЬЧЕНИЯ ЗОЛОТОСОДЕРЖАЩИХ РУД 37 KB
  КИНЕТИЧЕСКИЕ ЗАКОНОМЕРНОСТИ ИЗМЕЛЬЧЕНИЯ ЗОЛОТОСОДЕРЖАЩИХ РУД Александрова Т.Н. Институт горного дела ДВО РАН Литвинова Н.М. Институт горного дела ДВО РАН В процессе измельчения рудная масса испытывает комплекс физикохимических воздействий: механическую сухое и...
16793. КОНЪЮНКТУРА РЫНКА ЗОЛОТА РОССИИ 231 KB
  КОНЪЮНКТУРА РЫНКА ЗОЛОТА РОССИИ Конъюнктура рынка золота как и любого другого товара определяется соотношением предложения и спроса на него в разных сферах экономики. Объемы поступления золота зависят от уровня развития золотодобывающей промышленности а тот в сво...
16794. Математический способ повышения представительности геофизического опробования золотосодержащих руд 63.5 KB
  УДК 622 Математический способ повышения представительности геофизического опробования золотосодержащих рудФедянин С.Н. зам. главного геофизика НГМК канд. техн. наук; Нерущенко Е.В. главный геофизик Северного рудоуправления НГМК; Коробов В.А. геолог ОМГТП НГМК В НГМК