Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Т е м а: Структури як складені об’єкти даних. Співставність термів




ЛАБОРАТОРНІ РОБОТИ

З курсу

“Логічне програмування”

 

З а в д а н н я

Та вказівки для їх виконання

 

Завдання підготував: Василенко Я.П.

 

 

Тернопіль – 2010

Лабораторна робота № 1 (2 год)

Т е м а: Знайомство з системою Turbo–Prolog. Виконання готових програм.

М е т а: Ознайомитися з основними прийомами роботи в системі Turbo–Prolog, навчитися формувати запити для готових програм.

З а в д а н н я: 1. В системі Turbo–Prolog ознайомитися із командами верхнього меню та “гарячими” клавішами для завантаження текстів програм у вікно редактора, запису програм у файли на диски, відкриття вікна редактора для набору нової програми, командами редагування, компіляції, виконання програм тощо. Для пробного виконання вказаних команд скористайтесь прикладами програм, які містяться в каталозі D:\PROLOG\EXAMPLE.

2. Користуючись вказаними нижче програмами, отримати відповіді на наступні питання:

Exampl01:

– Якими видами діяльності займаються tom та bill?

– Хто грає в теніс?

– Чи є особи, які грають у футбол?

– Чи є такий вид діяльності, яким би займався eric?

– Для кожної особи вказати, якими видами діяльності вона займається?

Exampl02:

– Для кожної моделі машин вказати її характеристики: потужність, вік, колір та ціну?

– Визначити, чи є машини з потужністю не меншою за 90000 та ціною не більшою за 30000?

– Які машини мають червоний колір?

Exampl05:

– Визначити батьків alana?

– Знайти дітей для boba?

– Хто є братом для для fay?

– Хто із осіб, інформація про яких занесена в базу фактів, має дядька?

– Хто є дідусем для marilyn?

Exampl06:

Проаналізуйте програму і побудуйте запити самостійно.

Exampl07:

Розділ запитів включений в текст цієї програми. В режимі діалогу визначте телефони людей, які Вас цікавлять.

Exampl08:

Визначте, чи задані символи є літерами.

Exampl10:

Знайти факторіал чисел 5 і 7.

Exampl18:

Придумайте і розв’яжіть квадратні рівняння, які мають 2 корені, 1 корінь та не мають розв’язків.

В к а з і в к и до виконання завдань: Для кожної із програм проаналізуйте структуру програми, опис типів об’єктів та опис предикатів, для розділі clauses виясніть, які із тверджень задають факти, а які правила. Зверніть увагу на те, чи серед правил програми є рекурсивні правила.

К о н т р о л ь н і п и т а н н я:

1. Яка структура prolog–програми?

2. Що таке предикат?

3. Які типи об’єктів використовують в мові Prolog?

4. Яка існує різниця між об’єктами Базисного Прологу та Turbo–Prolog’у?

5. Що розуміють під поняттям атома? Які синтаксичні форми запису він має?

6. В якій формі будуються запити?

7. Що таке анонімна змінна?

Лабораторна робота № 2 (2 год)

Т е м а: Структури як складені об’єкти даних. Співставність термів.

М е т а: Оволодіти способами опису та використання структур в Пролог–програмах. Засвоїти правила співставності термів.

З а в д а н н я: 1. Завантажити програми Exampl13 та Exampl17 із каталога D:\PROLOG\EXAMPLE. Проаналізувати їх та виконати. Запити придумати самостійно.

2. Описати структуру для подання інформації про трикутники на площині. Написати процедури для перевірки того, чи заданий трикутник є правильним, рівнобедреним, прямокутним?

3. Перевірити, чи заданий відрізок лежить на вертикальній прямій x =7. Передбачити подання відрізків за допомогою структур.

4. Нехай прямокутник задається за допомогою структури rectangle(P1,P2,P3,P4), де P1,P2,P3,P4 — вершини прямокутника, вказані в порядку їх обходу за годинниковою стрілкою. Вершини подаються за допомогою структур point(X,Y). Описати відношення regular(R), яке має місце, якщо R — прямокутник із вертикальними та горизонтальними сторонами.

К о н т р о л ь н і п и т а н н я:

1. Як формуються структури в мові Пролог? Навести приклади.

2. Які правила сумісності термів діють в мові Пролог?

3. Як потрібно описувати структури в мові Turbo–Prolog?

 

Лабораторна робота № 3 (6 год)





Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 401 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Стремитесь не к успеху, а к ценностям, которые он дает © Альберт Эйнштейн
==> читать все изречения...

2180 - | 2137 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.