Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Основні принципи структурного підходу до побудови алгоритмів.

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

Структурний підхід ґрунтується на трьох основних принципах:

§ проектування алгоритму методом “зверху вниз”;

§ організація алгоритму у вигляді відносно незалежних частин – модулів;

§ конструювання алгоритму з уніфікованих базових алгоритмічних структур (слідування, розгалуження, повторення).

Структурне програмування – це метод складання програм на засадах структурного підходу до побудови алгоритмів.

Технологіяструктурного програмування – це система методів, способів і прийомів реалізації ідей структурного програмування засобами конкретної мови програмування (докладніше див. тему "Мови програмування").

Ефективним методом проектування алгоритмів у межах структурного підходу є метод "зверху вниз" (його називають також методом покрокової деталізації або методом послідовного уточнення). Ідея цього методу полягає у забезпеченні правильності алгоритму за рахунок самої процедури його розробки.

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

Таким чином, описаний метод проектування приводить до алгоритму деревовидної структури, яка поступово зводить складний алгоритм до сукупності простих елементів:


Таку структуру алгоритму називають також модульною, тому що кожна його підзадача становить собою модуль.

Модуль– це логічна частина алгоритму, яка є відносно незалежною, має певне цільове призначення і вирішує тільки одну чітко сформульовану задачу.

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

Модуль є відносно незалежною частиною алгоритму. Звичайно модуль обмінюється даними тільки з тим модулем, який відносно нього має наступний ступінь ієрархії, тобто інформаційна взаємодія обмежується контактом між модулем і його підмодулем. Обмін даними між модулями одного рівня або зв’язки далі наступного рівня виключаються (за можливістю). Щоб досягти мінімізації міжмодульної взаємодії, тісно зв’язані елементи намагаються розмістити в одному модулі, а незв’язані – в різних.

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

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

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

За методом структурного підходу розробка алгоритмів має здійснюватися виключно із застосуванням базових алгоритмічних конструкцій слідування, розгалуження та повторення. Теоретично доведено, що алгоритм будь-якої складності піддається опису за допомогою тільки таких простих базових конструкцій, де кожна з них може виступати складовим елементом будь-якої іншої (теорема про структурування, Bohm C., Jacopini G., 1972 р.).

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

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

Логічна простота базових конструкцій у поєднанні з модульною організацією структури алгоритму забезпечують його читабельність (алгоритм не перевантажується переходами та зв’язками, а послідовно простежується зверху вниз) і зручність використання.

Всі позитивні властивості структурних алгоритмів переходять у корисні якості розроблених на їх основі програм.


Читайте також:

  1. II. Основні закономірності ходу і розгалуження судин великого і малого кіл кровообігу
  2. Аграрна політика як складова економічної політики держави. Сут­ність і принципи аграрної політики
  3. Адвокатура в Україні: основні завдання і функції
  4. Аксіоматичний метод у математиці та суть аксіоматичної побудови теорії.
  5. Алгоритм побудови сітьових графіків.
  6. Алгоритми побудови дерев екстремальної ваги
  7. Амортизація основних засобів, основні методи амортизації
  8. Антикорупційні принципи
  9. Артеріальний пульс, основні параметри
  10. АРХІВНЕ ОПИСУВАННЯ: ПОНЯТТЯ, ВИДИ, ПРИНЦИПИ І МЕТОДИ
  11. Б/. Принципи виборчого права.
  12. Базові принципи обліку виробничих витрат і калькулювання собівартості продукції




Переглядів: 2789

<== попередня сторінка | наступна сторінка ==>
Види алгоритмів. | Приклади побудови структурних схем алгоритмів.

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.006 сек.