Автор: Юлия Зайцева
Дата: 25-01-02 11:53
Вот приблизительный набросок примитивного метода проверки правильности написания окончаний в словосочетаниях прил.+сущ.
таблица A (словарь)
поля:
a(слово без оконч.), b(часть речи), c(оконч.ед.ч.м.р.и.п.), d(оконч.ед.ч.ж.р.), e(род), f(склонение) ... z
записи (символьные значения кодовых полей используются для наглядности):
а b c d e f
розов п ый ая
крысовыхухол с ь ж 3
таблица B (окончания)
поля:
b(часть речи), c(оконч.ед.ч.м.р.и.п.), d(оконч.ед.ч.ж.р.и.п.), e(род), f(склонение), r(родительный м.р.е.ч.), r1(родительный ж.р.е.ч.)...p3(предложный ж.р.м.ч.)
записи:
b c d e f r r1 ... p3
п ый ая ого ой
с ж 3 и ... ях
Проверяемый текст: розового крысовыхухолях
Берём первое слово. Ищем в поле а таб. A по максимальному совпадению. Находим: розов. Выделяем окончание у первого слова путём сравнения с найденной основой. Ищем в таб. B значение по соответствию кодов b,c,d,e,f из таб. А. Находим, определяем падеж и число путём сравнения выделенного ранее окончания с полями r,r1...p3 таб. В. Берём второе слово. Ищем в таб. A по максимальному совпадению. Находим: крысовыхухол. Далее аналогично случаю с первым словом. Сравниваем падежи и числа обоих слов. Если не совпадают, выдаём сообщение об ошибке.
Само собой, метод несовершенен, поскольку в нём не учитываются формы и степени прилагательных, осоенности правописания гласных после шипящих и т.д., но никто и не утверждал, что это легко :)
|
|