
- •Лабораторная работа №1
- •Цель работы
- •Лабораторная работа №2
- •Цель работы
- •Выполнение работы
- •Лабораторная работа №3
- •Цель работы
- •Выполнение работы
- •Лабораторная работа №4
- •Цель работы
- •Выполнение работы
- •Лабораторная работа №5
- •Цель работы
- •Выполнение работы
- •Лабораторная работа №6
- •Цель работы
- •Выполнение работы
- •Лабораторная работа №7
- •Цель работы
- •Выполнение работы
- •Лабораторная работа №8
- •Лабораторная работа №9
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
Себряковский филиал Волгоградского государственного архитектурно-строительного университета
Кафедра МиЕНд
Отчёт по лабораторным работам по дисциплине Информационные Системы.
Выполнил студент
группы ИСТ 31д-12
Эльде Е.В.
Проверил ст.преподаватель
Андреев Д.С.
Михайловка 2014
Лабораторная работа №1
Тема: «Основные элементы языка Турбо-Пролог»
Цель работы
Изучить основные элементы языка Турбо-Пролог
Выполнение работы.
Задание.
1.Родственные отношения.
Имея список родственных отношений мать, отец и отношение пол. Описать правила для нахождения родителя(parent), дочери(daughter), сына(son), внука(grandchildren), сестры(sister ), брата(brother), бабушки(grand-mother), дедушки(grand-father).
domains
s=symbol /* объект s имеет тип symbol */
predicates
parent(s,s)
female(s)
male(s)
mother(s,s)
father(s,s)
ancestor(s,s)
child(s,s)
clauses
parent(pam,bob). /* Пам - родитель Боба */
parent(tom,bob).
parent(tom,liz).
parent(bob,ann).
parent(bob,pat).
parent(pat,jim).
female(pam). /* Пам - женщина */
female(liz). female(ann). female(pat).
male(tom). /* Том - мужчина */
male(bob). male(jim).
child(Y,X):- /* Y - отпрыск X, если X - родитель Y */
parent(X,Y).
mother(X,Y):- /* X - мать Y, если */
parent(X,Y),female(X). /* X - родитель Y и X - женщина */
father(X,Y):- /* X - отец Y, если */
parent(X,Y),male(X). /* X - родитель Y и X - мужчина */
ancestor(X,Z):- /* X - предок Z, если */
parent(X,Z). /* X - родитель Z */
ancestor(X,Z):- /* X - предок Z, если */
parent(X,Y),ancestor(Y,Z). /* X - родитель Y и
Y - предок Z */
Лабораторная работа №2
Тема: «Ввод и вывод в Турбо-Прологе»
Цель работы
Изучить инструменты языка Турбо-Пролог предназначенные для ввода и вывода данных
Выполнение работы
1. Создать символьные файлы f и g. Записать в файл h сначала компоненты файла f, затем компоненты файла g с сохранением порядка.
domains
file= r; w
predicates
readinloop
goal
openwrite(w,"h.txt"),writedevice(w),
openread(r,"f.txt"),readdevice(r),
not(readinloop),
closefile(r),
openread(r,"g.txt"),readdevice(r),
not(readinloop),
closefile(r),closefile(w).
clauses
readinloop:- readln(D), write(D), nl,readinloop.
2. Создать файл f, содержащий целые числа. Переписать в файл g отрицательные числа и определить их количество.
domains
file= r; w
i=integer
predicates
readinloop(i)
neg(i,i,i)
goal
openwrite(w,"g.txt"),writedevice(w),
openread(r,"f.txt"),readdevice(r),A=0,
readinloop(A),
closefile(r),
closefile(w).
clauses
readinloop(A):- eof(r), writedevice(screen), write(A),!.
readinloop(A):- readint(D),neg(D,A,B), readinloop(B).
neg(D,A,B):- D<0, write(D),nl, B=A+1.
neg(D,A,A):- D>=0.