
- •Модуль реалізації алгоритмів на графах з візуалізацією етапів розробки
- •Анотація
- •1 Призначення та область застосування об’єкту проектування
- •1.1 Призначення та область застосування
- •1.2 Огляд способів та засобів розробки
- •1.2.1 Побудова блок-схем алгоритмів програм.
- •1.2.2 Правила побудови блок-схем
- •1.2.3 Створення блок схем алгоритмів за допомогою fcEditor
- •1.2.4 Огляд fceDitor
- •1.2.5 Створення нового проекту
- •1.2.6 Створення блок-схеми та генерація коду
- •1.2.7 Експорт блок схеми алгоритму
- •1.2.8 Імпорт блок схеми
- •1.3 Огляд програмних та апаратних засобів
- •1.3.1 Псевдо код
- •1.3.2 Мови програмування високого рівня
- •1.4 Постановка задачі на розробку
- •2 Проектування модуля реалізації алгоритмів на графах з візуалізацією етапів розробки
- •2.1 Поняття графа
- •2.1.1 Орієнтований граф
- •2.1.2 Змішаний граф
- •2.2 Цикли та умовний оператор if
- •2.2.1 Безумовні цикли
- •2.2.2 Цикл з передумовою
- •2.2.3 Цикл з післяумовою
- •2.2.4 Цикл з виходом із середини
- •2.2.5 Цикл з лічильником
- •2.2.6 Вкладені цикли
- •2.2.7 Спільний цикл
- •2.2.8 Умовний оператор if
- •2.3 Реалізація модуля побудови алгоритмів на графах з візуалізацією процесу розробки
- •2.4. Реєстр змінних
- •2.5 Алгоритм побудови псевдокоду
- •2.5.1 Генерація псевдокоду лінійного алгоритму
- •2.5.2 Генерація псевдокоду нелінійного алгоритму
- •2.6 Форматування псевдокоду
- •2.7 Аналіз правильності побудови графу
- •2.7.1 Алгоритм аналізу перевірки правильності графу
- •2.8 Вибір технології та мови програмування
- •3 Тестування системи
- •Висновки
- •Список використаних джерел
2.4. Реєстр змінних
Написання програми будь-якої складності полягає, в кінцевому результаті, в описанні змінних, та виконання різних маніпуляцій над ними, тому, що всі данні які використовує програма повинні десь зберігатися. Будь-який аналізатор коду, чи алгоритму, повинен містити у своєму складі динамічну таблицю змінних, у якій містяться змінні певної області видимості алгоритму чи програми. Область видимості, або її ще називають зоною видимості, являє собою певний код, в рамках якого змінна певного типу є видимою і може використовуватися для різних операцій: математичних, рядкових, чи просто для зберігання тимчасового результату виконання.
Область видимості може бути глобальною і локальною. Локальна область видимості, як вже було написано вище – це певна логічна структурна одиниця програми, в рамках якої певні змінні можуть бути використані для математичних, рядкових, логічних чи інших операцій. Змінні, які були описані в межах локальної області видимості не можуть бути використані за її межами. Прикладом локальної області видимості може слугувати процедура, або функція, також в якості локальної області видимості можна розглядати певний модуль програми, або namespace – простір імен, який використовується в .Net для об’єднання класів, змінних і констант.
Глобальною областю видимістю може бути вся програма, або проект. В залежності від того, які атрибути (модифікатори) використовувалися при описанні, змінна може використовуватися в локальній, або глобальній області видимості. Прикладом змінних з глобальною областю видимості може слугувати статична змінна (Visual C#), або глобальна змінна (Оbject Pascal, C++).
В модулі реалізації алгоритмів на графах, введений свій реєстри змінних, для використанні його в процесі генерації коду, побудові алгоритму та перевірці правильності іменування змінних.
Правило іменування змінних полягає в тому, щоб імена змінних були створені згідно певного алфавіту, а саме:
символ підкреслення «_»,
цифри 0,1,2,3,4,5,6,7,8,9
латинські літери a...z, A…Z
Змінна може містити будь-яку кількість вище вказаних символів, в будь-якій комбінації, крім того винятку, що ім’я змінної повинно починатися або з символу підкреслення «_», або з літери латинського алфавіту. Обмеження на довжину змінної складає 256 символів.
Перевірка правильності змінних виконується згідно алгоритму зображеному на рис. 14
2.5 Алгоритм побудови псевдокоду
Основною метою побудови будь-якого алгоритму – є вирішення певної задачі чи проблеми за допомогою нього. Для того щоб застосувати алгоритм, необхідно реалізувати його на одній з мов програмування. Зазвичай, основою для візуалізації алгоритму слугують блок-схеми, які є не зовсім наглядними для того, щоб перевести її у програму, тому для таких цілей використовують проміжні етапи реалізації алгоритмів, один з яких має назву псевдокод.
Псевдокод дозволяє відобразити схематичне зображення алгоритму використовуючи ключові слова мов програмування, але опускаючи несуттєві деталі і специфічний синтаксис.
Одним із завдань у виконаній роботі було створення модуля генерації псевдокоду виходячи з побудованого графу алгоритму, до складу якого входить сам модуль побудови псевдокоду і модуль форматування псевдокоду, задачею якого є форматування коду у відповідності з певними правилами.
Оскільки для схематичного відображення алгоритму було вирішено використовувати граф, то процес генерації псевдокоду, відповідно, полягає у реалізації алгоритму обходу графу з певними його модифікаціями.