Лекції >> Програмування, комп’ютери і кібернетика >> Структурний підхід до алгоритмізації

Розробка алгоритмів розв’язування задач на ЕОМ ставить деякі природні вимоги до алгоритмів: алгоритм має бути зрозумілим і легко сприйматися не тільки його розробником, необхідно, щоб алгоритм можна було легко перевірити, а також модифікувати його без суттєвої перебудови всієї структури.

Тому при розробці алгоритмів дотримуються особливої методики, що називається структурним підходом. За цим підходом алгоритми, як в конструкторі, “збираються” з трьох базових структур: слідування, розгалуження, цикл, кожна з яких має один вхід і один вихід.

Базова структура “слідування”

Ця структура (мал. 1) складається із двох функціональних блоків F1, F2 і означає, що два функціональних блока можуть розміщуватися один за одним.

Базова структура “розгалуження”

Ця g>Базова структура “слідування”

Ця структура (мал. 1) складається із двох функціональних блоків F1, F2 і означає, що два функціональних блока можуть розміщуватися один за одним.

Базова структура “розгалуження”

Ця структура (мал. 2) складається з логічного блоку, у якому перевіряється деяка умова U, та функціональних блоків F1, F2. При цьому функціональний блок F2 може бути відсутнім. Якщо умова U виконується, то відбувається вихід з блоку за стрілкою “+”, якщо ні - за стрілкою “-“.

Базова структура “цикл”

До складу структури входить логічний блок з перевіркою умови U і функціональний блок F, який називається тілом циклу. Зі структури “цикл” слідує, що тіло F може виконуватися неодноразово.

У залежност структура (мал. 2) складається з логічного блоку, у якому перевіряється деяка умова U, та функціональних блоків F1, F2. При цьому функціональний блок F2 може бути відсутнім. Якщо умова U виконується, то відбувається вихід з блоку за стрілкою “+”, якщо ні - за стрілкою “-“.

Базова структура “цикл”

До складу структури входить логічний блок з перевіркою умови U і функціональний блок F, який називається тілом циклу. Зі структури “цикл” слідує, що тіло F може виконуватися неодноразово.

У залежності від взаємного розташування логічного та функціонального блоків, розрізняють цикли двох видів:

  • цикл-поки: тіло циклу розташоване після перевірки умови (мал. 3). Поки умова виконується, виконується і тіло. Тому можливий випадок, коли тіло циклу жодного разу не виконається. Тут U являється умовою продовження циклу (кожен раз, коли U істинно, тіло F виконується);
  • цикл-до: Тіло циклу розташоване до перевірки умови (мал. 4), тому тіло циклу завжди виконається хоча б один раз, незалежно від виконання умови. Тут U являється умовою виходу з циклу (як тільки U стає істинним, p>

    Базова структура “цикл”

    До складу структури входить логічний блок з перевіркою умови U і функціональний блок F, який називається тілом циклу. Зі структури “цикл” слідує, що тіло F може виконуватися неодноразово.

    У залежності від взаємного розташування логічного та функціонального блоків, розрізняють цикли двох видів:

    • цикл-поки: тіло циклу розташоване після перевірки умови (мал. 3). Поки умова виконується, виконується і тіло. Тому можливий випадок, коли тіло циклу жодного разу не виконається. Тут U являється умовою продовження циклу (кожен раз, коли U істинно, тіло F виконується);
    • цикл-до: Тіло циклу розташоване до перевірки умови (мал. 4), тому тіло циклу завжди виконається хоча б один раз, незалежно від виконання умови. Тут U являється умовою виходу з циклу (як тільки U стає істинним, виконання тіла F припиняється).

    Складання блок-схем

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

    Складемо блок-схему, скориставшись структурою “слідування”, в якій на місці блоку F2 вставимо структуру “цикл-до”, а в останній замість блоку F вставимо структуру “розгалуження”. Матимемо структуру, як на мал. 5.

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

    Розробка алгоритмів розв’язування задач на ЕОМ ставить деякі природні вимоги до алгоритмів: алгоритм має бути зрозумілим і легко сприйматися не тільки його розробником, необхідно, щоб алгоритм можна було легко перевірити, а також модифікувати його без суттєвої перебудови всієї структури.

    Тому при розробці алгоритмів дотримуються особливої методики, що називається структурним підходом. За цим підходом алгоритми, як в конструкторі, “збираються” з трьох базових структур: слідування, розгалуження, цикл, кожна з яких має один вхід і один вихід.

    Базова структура “слідування”

    Ця структура (мал. 1) складається із двох функціональних блоків F1, F2 і означає, що два функціональних блока можуть розміщуватися один за одним.

    Базова структура “розгалуження”

    Ця структура (мал. 2) складається з логічного блоку, у якому перевіряється деяка умова U, та функціональних блоків F1, F2. При цьому функціональний блок F2 може бути відсутнім. Якщо умова U виконується, то відбувається вихід з блоку за стрілкою “+”, якщо ні - за стрілкою “-“.

    Базова структура “цикл”

    До складу структури входить логічний блок з перевіркою умови U і функціональний блок F, який називається тілом циклу. Зі структури “цикл” слідує, що тіло F може виконуватися неодноразово.

    У залежності від взаємного розташування логічного та функціонального блоків, розрізняють цикли двох видів:

    •   цикл-поки: тіло циклу розташоване після перевірки умови (мал. 3). Поки умова виконується, виконується і тіло. Тому можливий випадок, коли тіло циклу жодного разу не виконається. Тут U являється умовою продовження циклу (кожен раз, коли U істинно, тіло F виконується);
    •   цикл-до: Тіло циклу розташоване до перевірки умови (мал. 4), тому тіло циклу завжди виконається хоча б один раз, незалежно від виконання умови. Тут U являється умовою виходу з циклу (як тільки U стає істинним, виконання тіла F припиняється).

    Складання блок-схем

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

    Складемо блок-схему, скориставшись структурою “слідування”, в якій на місці блоку F2 вставимо структуру “цикл-до”, а в останній замість блоку F вставимо структуру “розгалуження”. Матимемо структуру, як на мал. 5.

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

Схожі матеріали
05.10.2012 Введення та виведення даних, розробки та опису лінійних програм.
20.12.2011 Pascal - лабораторні роботи - для студентів III-го курсу (лекції Ляшенко Б.М.)
12.12.2010 Робота з підпрограмами
12.12.2010 Робота з рядковими та символьними величинами.
12.12.2010 Робота з циклічними програмами
12.12.2010 Робота з масивами даних.
12.12.2010 Розробка та описання програм з розгалуженнями
12.12.2010 Початки програмування
12.12.2010 Етапи розв’язання задач з використанням ЕОМ
12.12.2010 Поняття про алгоритм

Тести даної категорії
12.12.2010 ПОЧАТКИ АЛГОРИТМІЗАЦІЇ. ВСТУП ДО ПРОГРАМУВАННЯ

Останні створені тести
16.11.2015 Олімпійські ігри Стародавньої Греції. Відродження олімпійських ігор. Олімпійський рух сучасності.
28.10.2015 British Writers. Тест для студентів 4 курсу ННІ педагогіки
27.10.2015 The Passive Voice. Тест для студентів 2 курсу ННІ педагогіки
27.10.2015 Articles. Тест для студентів 1 курсу неспеціальних факультетів
27.10.2015 The Active Voice. Тест для студентів 2 курсу ННІ педагогіки
08.10.2014 INTEL
22.10.2012 Цивільний захист
26.09.2012 Мовнокомунікативна компетентність. Орфографічна складова
21.09.2012 OC Windows
31.05.2012 Lexikalisch-grammatischer Test. Тест для студентів 1 курсу неспеціальних факультетів.
Рекомендовані лекції
12.12.2010 Переборні задачі
28.09.2014 Лекції з курсу "Основи психокорекції"
22.02.2016 ОС та СП. Тема 2. Процеси та потоки. Тези
26.09.2012 Програмне забезпечення (ПЗ). Апаратне забезпечення інформаційної системи
28.03.2016 ОС та СП. Тема 6. Планування. Слайди
13.11.2014 MICROSOFT OFFICE. СКЛАД, ПРИЗНАЧЕННЯ, ОСНОВНІ ПРОГРАМИ-ДОДАТКА
28.09.2014 Лекції з курсу "Малюнок в практиці психодіагностики"
09.03.2016 ОС та СП. Тема 3. Керування пам'яттю. Тези
12.12.2010 Поняття про алгоритм
12.12.2010 Рекурсія