Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
4
Добавлен:
04.03.2023
Размер:
55.86 Кб
Скачать

3. Алгоритм. Форми опису алгоритмів.

Алгоритм — набір інструкцій, які описують порядок дій виконавця, щоб досягти результату розв'язання задачі за скінченну кількість дій; система правил виконання дискретного процесу, яка досягає поставленої мети за скінченний час. Для візуалізації алгоритмів часто використовують блок-схеми.

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

  • словесний;

  • словесно-формульний;

  • графічна схема;

  • блок-схема;

  • операторна схема;

  • НІРО-схема;

  • таблиця рішень, тощо.

4. Основні вимоги до блок-схеми.

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

Призначення кожного із таких блоків, а також правила їх застосування регламентовані Міждержавним стандартом Єдиної системи програмної документації (ЄСПД) ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения».

Графічне зображення

блоку

Найменування

Функція

Термінатор

(пуск-зупинка)

Позначення початку і кінця алгоритму.

Дані

(введення-виведення)

Перетворення даних у форму, придатну для обробки (введення) або відображення результатів обробки (виведення).

Використовується для позначення будь-якої операції введення / виведення.

Процес

(операторний блок)

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

Типове його використання – позначення оператора присвоювання.

Рішення

(умовний блок)

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

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

Зумовлений

процес

(підпрограма)

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

Використовується для позначення виклику підпрограм (процедур і функцій).

Межі циклу

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

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

З'єднувач

Відображає зв'язок між перерваними лініями потоку інформації (наприклад, на іншій сторінці).

Коментар

Використовується для надання більш детальної інформації про кроки, процеси або групи процесів.

Розмір а повинен вибиратися з ряду 10, 15, 20 мм. Допус­кається збільшувати розмір а на число, кратне 5. Роз­мір b дорівнює 1,5а. При ручному виконанні схем алгоритмів допускається встановлювати b рівним 2a.

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

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

При складанні блок-схем необхідно керуватися наступними правилами:

  1. блок-схема повинна містити одну початкову, одну кінцеву й кінцеве число інших вершин;

  2. входи ій виходи різних вершин з'єднуються дугами, спрямованими тільки від виходу до входу;

  3. кожен вихід будь-якої вершини з'єднується тільки з одним входом;

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

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

  1. Проектування логіки програмного модуля.

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

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

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

Для того, щоб цей шаблон можна було реалізувати за допомогою шаблону одинака, або за допомогою іншого способу групування пов'язаного коду, необхідно виконати наступні умови:

Частина коду має мати глобальну або публічну область видимості і спроєктована для глобального/публічного використання. Додаткові приховані і захищені методи або код можуть виконуватись через доступ до публічного коду.

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

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

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

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

Висновок: на даній лабораторній роботі ми розробляли алгоритм розв'язання задачі, та записували його у вигляді блок схемі.