АЛГОРИТМИ И ПРОГРАМИ В ТЕКСТООБРАБОТКАТА

(дипломна работа, София, ФМИ, 1995 г.)

 

Велико е Правилото,
трайна е ползата от спазването му.
То не е било нарушавано
още от времената на Озирис.
Дори и когато краят настъпи,
Правилото ще просъществува.

Птах-хотеп
(ок. 2300 г. пр. Хр.)

 

3.4. Примерна програмна реализация на локалните правила

При програмна реализация са възможни два варианта на намеса от страна на човек:

(1) при итеративна визуализация;

(2) с помощта на редактор извън програмата, който разполага с възможност за фиксиране на конкретните маркирани места от текста, които налагат ръчна проверка.

По-лесен за реализация естествено е вторият метод, докато първият предоставя максимална гъвкавост и динамичност (за сметка на скоростта). Освен това редактор от тип (1) би бил твърде полезен за използване, защото води до по-лесно и бързо забелязване на направените грешки (т. е. може успешно да се използва като форма на обучение при набор на текстове).

Тъй като правилата се делят на локални и глобални, то е разумно обработката на текст да става също на два етапа – първо локално и след това глобално (т. е. първо на равнище знакове в къс отрязък, а след това – на равнище думи, изречения и т. н.). Подредбата не е случайна, защото за да се приложат правилно голяма част от глобалните правила, е необходимо да бъде гарантирана липсата на локални грешки. Характерно е, че огромната част от локалните правила са автоматични (най-често автоматични безусловни), докато при глобалните правила е обратно – те са предимно автоматизирани (най-често автоматизирани безусловни). Това също е една основателна причина за двуетапна обработка на текстовете.

Тук ще бъдат дадени някои доводи защо е избрана реализация на алгоритмите чрез буфер. Това се наложи, тъй като основната дейност по време на работа на тези алгоритми е четенето и записа в и от файлове. Както е известно, прякото обръщение към файлове при малки полета води до затруднен достъп поради праволинейността при позициониране. Този бавен достъп заедно с множеството входно-изходни проверки при всяко четене и запис налагат използването на буфер за работа и обработка на данните в реално време, тъй като при него имаме бърз достъп, промените са лесни и най-вече съществува непрекъсната обозримост на околността, в която се намираме. Единствените проблеми възникват при определяне на диапазона, който ни е необходим за действие, като са възможни два подхода – първоначално (константно) заделяне на границите, или динамична промяна в зависимост от конкретната решавана задача. Една схема, която е достатъчно илюстративна и ясна за подхода, чрез който е пристъпено към реализация на изброените по-горе правила, е следната:

схема на буфери...

<< назад | отгоре | напред >>

Съдържание

0. Встъпление

1. Увод

2. Сричкопренасяне

2.1. Малко история

2.2. Правила за сричкопренасяне от 1983 г.

2.3. Метод на скандирането

2.4. Алгоритъм на сричкопренасянето по фонетичен и морфологичен принцип

2.4.1. Алгоритъм за откриване на морфема в дума

2.4.2. Алгоритъм за анализ на буква

2.4.3. Алгоритъм за анализ на дума

2.4.4. Алгоритъм за анализ на текст

2.4.5. Други възможности

3. Автоматизирано откриване и отстраняване на грешки в текст

3.1. Дефиниции и понятия

3.2. Често допускани грешки

3.3. Класификация на правилата

3.4. Примерна програмна реализация на локалните правила

3.4.1. Нови дефиниции, променливи, флагове и множества

3.4.2. Таблица на локалните правила

3.4.3. Функции, необходими за реализация на локалните правила

3.5. Глобални правила

3.5.1. Класификация на думите в текст на равнище знакове

3.5.2. Функции, необходими за реализация на глобалните правила

3.5.3. Функции и идеи, които предстоят да бъдат осъществени

4. Някои метрики в текстообработката

4.1. Текстови и шрифтови метрики

4.2. Сложност на текст

4.3. Професионализъм на предпечатната подготовка

4.3.1. Използване на възможностите на програмите чрез дефиниране на различни стилове

4.3.2. Премахване на излишното форматиране

4.3.3. Използване на възможностите за настройка на основните отношения между и в параграфите

5. Заключение

6. Литература

7. Приложениe

7.1. Списък на книгите, върху които са направени експерименти

7.2. Някои статистики и резултати от проведени изследвания