justify"> Отримане значення являє собою посилання на відповідну категорію словника. Так слово «клавіатура» буде додано до групи №2 (передостання ударна голосна).
Якщо вихідного ритмічному малюнку слова відповідає еталонний ритмічний малюнок, у якого є неоднозначні або вероятностно ударні/ненаголошені позиції через нестачу вихідних даних, система передає контроль користувачеві для ручного вказівки позиції ударної гласною. Таким чином, якщо система не змогла сформулювати однозначну гіпотезу постановки наголосу в слові «клавіатура» і ритмічний малюнок являє собою, наприклад, «- - -% -», програма зупиняє свою роботу і чекає команди користувача. Введений користувачем результат зберігається, і по ньому відбувається описане вище додати до словника.
Дана процедура повторюється для всіх невідомих слів у вірші.
Послідовність виконання програми можна представити у вигляді такої схеми:
Схема 1. Виконання програми
5. Структура системи
. 1 Структура словника
Елементи словника мають бути згруповані за позиції ударної гласною, рахуючи з кінця (№1 - група, в якій зберігаються слова з останньою ударної гласною, №2 - слова з передостанньої ударної гласною і т. д.) для того, щоб система мала швидкий доступ до відповідної категорії для оперативного поповнення.
Кожна група повинна бути відсортована за алфавітом. Сортувальну операцію слід проводити після кожного оновлення бази.
. 2 Структура вірша
Розміри всіх строф вірша повинні бути однаковими, так як тільки в такому випадку стає можливим сформувати прообраз одночасно для всіх строф. Якщо хоча б одна з строф містить більшу або меншу кількість рядків, можна судити про те, що в даному місці відбувається зміна ритму, і подальше формування еталонного ритмічного малюнка неможливо. У такому випадку система перериває свою роботу. Строфи відокремлюються один від одного порожнім рядком.
6. Конструкторсько-технологічна частина
. 1 Вибір технології програмування
Технологія програмування - сукупність методів і засобів, використовуваних в процесі розробки ПЗ. Технологія програмування являє собою набір технологічних інструкцій, що включають в себе:
· вказівку послідовності виконання технологічних операцій;
· перерахування умов, при яких виконується та чи інша операція;
· опису самих операцій, де для кожної операції визначені вихідні дані, результати, а також інструкції, нормативи, стандарти, критерії та методи оцінювання і т. д.
Крім набору операцій та їх послідовність, технологія також визначає спосіб опису проектованої системи. Для розробки системи, описаної в даній роботі, була вибрана технологія об'єктно-орієнтованого програмування (ООП). У даному розділі, на основі відомостей, взятих з [15] і [16], наводиться опис даної технології.
. 2 Історія виникнення ООП
З моменту винаходу комп'ютера методології програмування радикально змінилися. Зокрема на це вплинула зростаюча складність програм. Приміром, програми для перших комп'ютерів представляли собою послідовності машинних команд, записаних у двійковому коді за допомогою перемикання спеціальних тумблерів. Такий підхід залишався цілком працездатним доти, поки довжина програм не стала перевищувати кілька сотень рядків. У міру збільшення розміру програм виникла необхідність в новому способі програмування. В результаті з'явився мова асемблера, що дозволяє закодувати машинні інструкції за допомогою символів в більш зрозумілу для людини вид. Розмір програм продовжував збільшуватися, тому програмістам знадобився ще більш потужна мова програмування, що дозволяє працювати з набагато більш складними структурами і алгоритмами. Першим широко відомою мовою програмування виявився Fortran, з яким пов'язують початок активного розвитку та застосування мов високого рівня. Незважаючи на це, Fortran важко назвати ясною і зрозумілою мовою, що дозволяє створювати прості та наочні програми.
Шістдесяті роки дали поштовх розвитку структурного програмування. Основними засобами його втілення стали мови C і Pascal. Структурні мови програмування дозволили легко створювати досить складні програми. Крім того, вони характеризуються підтримкою ізольованих підпрограм, локальних змінних і багатим вибором керуючих конструкцій. Незважаючи на те, що структурні мови являють собою потужний засіб, вони не дозволяють створювати дуже великі проекти.
Кожен новий метод програмування дозволяв створювати все більш складні і великі програми, ...