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). Головна ж перевага структурного програмування - це зменшення кількості помилок унаслідок застосування тільки допустимих структур.


 

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

74076. ВОЗНИКНОВЕНИЕ И РАЗВИТИЕ ФЕОДАЛЬНОГО ГОСУДАРСТВА И ПРАВА 66 KB
  Для феодальной земельной собственности были характерны следующие особенности: 1 иерархический характер; 2 сословный характер; 3 ограничение права распоряжаться землей а некоторые категории например церковные земли вообще были изъяты из гражданского оборота. Основные черты феодального права Одновременно со складыванием феодальной государственности шел процесс становления феодального права. Можно выделить следующие характерные черты феодального права.
74077. Право континентальной Европы в средние века 100 KB
  Номинально верховным собственником всей земли в государстве считался король. Но большая часть земель находилась в руках феодалов в качестве фьефа (феода) – условного наследственного земельного владения. Феодалы считались вассалами короля, а он их сеньором.
74078. Право средневековой Англии 70.5 KB
  После нормандского завоевания в Англии было образовано централизованное государство с сильной королевской властью. В руках монарха были сосредоточены законодательная, судебная и военная власть. Это объясняется, прежде всего, необходимостью сплочения завоевателей для удержания в повиновении покоренного населения.
74079. Государство и право Византии 61 KB
  Государство и право Византии. Право Византии. В Византии не было определенного порядка престолонаследия. В связи с этим в Византии широко распространился институт соправителей когда император назначал соправителя своего малолетнего сына цезаря для облегчения тому борьбы за престол.
74080. Мусульманское право 57 KB
  Социальные позиции раннего ислама (ограничение ростовщичества, установление милости беднякам, освобождение рабов, честность в торговле) сделали его привлекательным для широких народных масс. Но купеческая и племенная верхушка первоначально восприняла их настороженно, если не враждебно.
74081. ВОЗНИКНОВЕНИЕ БУРЖУАЗНОГО ГОСУДАРСТВА И ПРАВА 35 KB
  В зависимости от этого решался вопрос о форме государства созданного революцией о форме права и способах его кодификации. Буржуазное право Буржуазные революции положив начало перевороту в области социальных и политических отношений привели к значительным изменениям и в области права. Традиционные отрасли цивильного и карательного права дополняются новой и обособленной отраслью регулирования организации и деятельности учреждений государственной власти.
74082. Государство и право Англии 100 KB
  Накануне революции английское общество было расколото на два основных лагеря. Сторонники короля (роялисты) – представители “старого”, феодального дворянства и англиканского духовенства были опорой абсолютизма и выступали за сохранение прежних феодальных порядков и англиканской церкви. Противники абсолютизма (новое дворянство - “джентри” и буржуазия)
74083. Государство и право США в Новое время 76 KB
  Отношения американских колоний и метрополии в XVIII в. во многом определялись политикой Англии, стремящейся превратить колонии в сырьевой придаток и рынок сбыта. Это вызвало возмущение во всех слоях общества и в 60-е – начале 70-х гг. начались массовые выступления населения колоний. Королю была направлена петиция с просьбой прекратить притеснения и не давать повода к окончательному разрыву.
74084. Государство и право Франции в Новое время 144 KB
  В условиях острого кризиса абсолютизм был вынужден пойти на созыв Генеральных штатов, не собирающихся более 150 лет. Однако с самого начала работы делегаты третьего сословия, поддержанные частью других делегатов, вступили в конфликт с королевской властью. Депутаты организовались сначала в Национальное собрание, а позднее в Учредительное собрание