Студопедия

Главная страница Случайная страница

Разделы сайта

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






Domains. автор=автор(имя,фамилия)






автор=автор(имя, фамилия)

книга=книга(тема_книги, название_книги)

тема_книги, название_книги, имя, фамилия=symbol

код_сотрудника, группа=integer

Predicates

студент(имя, фамилия, группа)

сотрудник(имя, фамилия, код_сотрудника)

информация_книга(книга, автор)

выбор_меню(integer)

Clauses

выбор_меню(2): -

nl,

информация_книга(книга(«Сети», Название_книги), автор(Имя, Фамилия)),

write(Название_книги, " ", Имя, " ", Фамилия),

nl.

выбор_меню(3): -

nl,

информация_книга(книга(«Базы данных», Название_книги), автор(Имя, Фамилия)),

write(Название_книги, " ", Имя, " ", Фамилия),

nl.

выбор_меню(4): -

nl,

информация_книга(книга(«Управление данными», Название_книги), автор(Имя, Фамилия)),

write(Название_книги, " ", Имя, " ", Фамилия),

nl.

выбор_меню(5): -

nl,

информация_книга(книга(«Информационные системы», Название_книги), автор(Имя, Фамилия)),

write(Название_книги, " ", Имя, " ", Фамилия),

nl.

выбор_меню(6): -

nl,

студент(Имя, Фамилия, 10),

write(Имя, " ", Фамилия, " "),

nl.

выбор_меню(7): -

nl,

студент(Имя, Фамилия, Группа), Группа< > 10,

write(Имя, " ", Фамилия, " ", Группа),

nl.

выбор_меню(1): -

nl,

информация_книга(книга(Тема_книги, N), автор(I, F)), F< > " Ручкин",

write(Тема_книги, " ", N, " ", I, " ", F, " "),

nl.

выбор_меню(8): -

nl,

сотрудник(I, F, Okl), Okl=1700,

write(I, " ", F, " "),

nl.

выбор_меню(N): -

nl,

N< > 1, N< > 2, N< > 3, N< > 4, N< > 5, N< > 6, N< > 7, N< > 8,

write(" Всего пунктов меню восемь! "),

nl.

студент(«Иван», «Иванов», 110).

студент(«Иван», «Иванов», 10).

студент(«Николай», «Иванов», 10).

студент(«Петр», «Петров», 15).

студент(«Татьяна», «Сидорова», 13).

студент(«Мария», «Самсонова», 12).

сотрудник(«Ольга», «Зайцева», 310).

сотрудник(«Василий», «Донкин», 4500).

сотрудник(«Ольга», «Гусева», 500).

сотрудник(«Денис», «Серов», 008).

сотрудник(«Александра», «Орлова», 007).

сотрудник(«Ольга», «Зайцева», 350).

информация_книга(книга(«Управление данными», «Аssembler»), автор(«Ильф», «Петров»)).

информация_книга(книга(«Базы данных», «Методичка»), автор(«Алекс», «Ручкин»)).

информация_книга(книга(«Базы данных», «Delphi 7»), автор(«Алекс», «Ручкин»)).

информация_книга(книга(«Информационные системы», «Справочник»), автор(«Александр», «Седов»)).

информация_книга(книга(«Сети», «Методичка»), автор(«Александр», «Седов»)).

информация_книга(книга(«Сети», «Учебник»), автор(«Александр», «Седов»)).

Goal

 

Задание:

1.Добавьте меню (предикат выбор_меню) которое позволит показать:

- студентов определенной группы;

- темы выбранных книги какого либо читателя;

- все книги по теме «Сети»;

- всех студентов которые не интересуются темами «Базы данных»;

- все книги автора Архангельского.

2. добавить несколько своих пунктов в меню.

3. Создайте цель для использования предиката выбор_меню.

 

Вопросы для самоконтроля

1. Описать использование правил для условного ветвления.

2. Перечислить известные вам встроенные в Visual Prolog предикаты.

3. Как организуется в Visual Prolog детерминизм и отсечение

 


Лабораторная работа «Составные объекты»

Тема: составные объекты.

Цель работы: изучить виды объектов, правила использования.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.