АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Контрольный пример

Читайте также:
  1. X. примерный перечень вопросов к итоговой аттестации
  2. Буду на работе с драконом примерно до 21:00.
  3. Булевы функции. Способы задания. Примеры.
  4. В некоторых странах, например в США, президента заменяет вице-
  5. В примере
  6. В странах Востока (на примере Индии и Китая)
  7. Вания. Одной из таких областей является, например, регулирова-
  8. Вашим сообщениям, например, спеть «С днем рождения»
  9. Виды знания. Контрпример стандартному пониманию знания
  10. Власть примера. Влияние с помощью харизмы
  11. Внешний долг (внешняя задолженность): пример России
  12. Вопрос 11. Герои романтических поэм М. Ю. Лермонтова (на примере одного произведения).

 

Фрагмент программы печатает все элементы, проходя его «в глубину».

 

show_tree(nil).

show_tree(tree(X,Left,Right)):-write(X),show_tree(Left), show_tree(Right).

 

Задание к работе

 

1. Составить программу, которая решает задачи соответствующего варианта.

2. Предусмотреть в программе возможности автоматического ввода/вывода деревьев.

3. Подобрать тестовые данные, проверяющие работу программы.

4. Провести анализ ошибок и полученных результатов, составить отчет о проделанной работе.

Варианты заданий

 

1. Подсчитать длину максимального пути и выдать его трассировку.

2. Выдать метки всех вершин с их кратностями.

3. Построить деревянное покрытие графа.

4. Выделить метку вершины дерева, имеющую наибольшее число вхождений.

5. В указанном ярусе дерева добавить вершину с указанной меткой.

6. Составить программу, реализующую сортировку линейного числового списка на основе бинарного отсортированного дерева.

7. Проверить дерево на изоморфизм.

8. Для связного графа построить деревянное покрытие, начиная с указанной вершины.

9. Выделить в дереве все поддеревья с указанной меткой.

10. Реализовать обход дерева в ширину с выдачей меток.

11. Удалить вершину с указанной меткой, в случае отсутствия указанной метки выдать сообщение о невозможности удаления.

12. Реализовать обход дерева в глубину с выдачей меток.

13. Реализовать поиск в дереве данного поддерева.

14. Подсчитать количество вхождений в дерево данной метки.

15. Выделить в дереве максимальное поддерево с заданной меткой.

16. Подсчитать количество вершин дерева. Выдать наиболее длинный путь дерева.

17. Подсчитать в дереве количество совпадающих вершин.

 

18. Выдать элемент бинарного дерева, который имеет в нем наибольшее число вхождений.

19. Сравнить два дерева на изоморфизм.

20. Построить дерево по алгебраическому выражению.

 

Лабораторная работа № 5

Работа с динамическими базами данных

 

Цель работы

 

Ознакомиться с реализацией динамических баз данных в языке Пролог.

Задание для подготовки к работе

 

Изучить лекционный материал.

 

Порядок выполнения работы

 

1. Решить задачу соответствующего варианта.

2. Подобрать тестовые данные и протестировать программу на компьютере.

3. Составить отчет о проделанной работе.

 

Содержание отчета

 

1. Исходные тексты программ на языке Пролог.

2. Наборы тестовых данных и результаты работы программ.

3. Перечень и анализ ошибок.

4. Выводы по работе.

 

Основные понятия

 

Реляционная модель данных предполагает, что база данных – это есть описание некоторого множества отношений. Пролог-программу можно рассматривать как такую базу данных, здесь отношения между данными представлены в виде фактов и правил. В Прологе есть специальные средства для модифицирования этой базы данных, то есть добавлять и удалять новые отношения из файла. Для этих целей служат встроенные предикаты [1, 5]:

consult(F) – все предложения, содержащиеся в файле будут использоваться Пролог-машиной для достижения целей.

reconsult(F) – если в файле есть предложения, касающиеся отношений, которые уже были определены ранее, старые отношения заменяются на новые из файла.

assert(C) – добавляет предложение C из базы данных.

retract(C) – удаляет предложение C из базы данных.

asserta(C) – помещает предложение C в начале базы данных.

assertz(C) – помещает предложение C в конце базы данных.

see(F) – делает файл F текущим входным потоком.

tell(F) – файл становиться текущим выходным потоком.

seen – закрывает текущий входной поток.

told – закрывает текущий выходной поток.

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.)