ВУЗ:
Составители:
Рубрика:
11
того, чтобы все ответы могли быть собраны вместе в случае, если вопрос
допускает несколько вариантов ответов. Остальные части предиката удаляют
избыточные данные на выходе, затем компонуют его и распечатывают
выходные данные.
На рис. 2.1 показана блок-схема с основными информационными
потоками в системе.
Рис. 2.1. Информационные потоки в программе GEOBASE
В схематической форме код для высокоуровневого функционирования
программы будет выглядеть следующим образом:
loop:-
write("Query: "),readln(STR),STR >< "",
scan(STR,LIST), % Возвращает список символов
filter(LIST,LIST1), % Удаляет знаки пунктуации и
посторонние символы
pars(LIST1,E,Q), % Обрабатывает запрос
findall(A,eval(Q,A),L),
unik(L,L1), % Удаляет повторяющиеся объекты
(например, Найти реки штатов,
граничащих с Техасом)
write_list(0,L1),
write_unit(E),listlen(L1,N),
write_solutions(N), !, loop.
loop.
Получение запроса
Фильтр
Синтаксический
анализатор
Процессор запросов
Низкоуровневые
функции реляционного
доступа
Компоновка
Ответ
Конкретизация
связей
Неформализованная форма
вопроса, содержащая связи и
информацию о его структуре
Начало
того, чтобы все ответы могли быть собраны вместе в случае, если вопрос допускает несколько вариантов ответов. Остальные части предиката удаляют избыточные данные на выходе, затем компонуют его и распечатывают выходные данные. На рис. 2.1 показана блок-схема с основными информационными потоками в системе. Начало Получение запроса Фильтр Неформализованная форма Синтаксический вопроса, содержащая связи и анализатор информацию о его структуре Процессор запросов Компоновка Ответ Низкоуровневые функции реляционного Конкретизация доступа связей Рис. 2.1. Информационные потоки в программе GEOBASE В схематической форме код для высокоуровневого функционирования программы будет выглядеть следующим образом: loop:- write("Query: "),readln(STR),STR >< "", scan(STR,LIST), % Возвращает список символов filter(LIST,LIST1), % Удаляет знаки пунктуации и посторонние символы pars(LIST1,E,Q), % Обрабатывает запрос findall(A,eval(Q,A),L), unik(L,L1), % Удаляет повторяющиеся объекты (например, Найти реки штатов, граничащих с Техасом) write_list(0,L1), write_unit(E),listlen(L1,N), write_solutions(N), !, loop. loop. 11
Страницы
- « первая
- ‹ предыдущая
- …
- 9
- 10
- 11
- 12
- 13
- …
- следующая ›
- последняя »