Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Розробка програми з використанням мови логічного програмування Prolog

Реферат Розробка програми з використанням мови логічного програмування Prolog





Потім відбувається відкат до першої можливої вЂ‹вЂ‹точці повернення (перехід до 3 пункту).

. Якщо клітина не є кінцевою, то переходимо до 3 пункту.

. Якщо можливих варіантів більше немає, то програма завершує пошук можливих варіантів.

Опис інтерфейсу користувача

Інтерфейс користувача включає в себе діалог з користувачем, у ході якого запитується ім'я файлу, що містить лабіринт, координати клітини відправлення і клітини призначення. Висновок колій проводиться в текстовий файл "lab. txt .

логічне програмування prolog програма

Список використаної літератури


В· Новицька Ю.В. "Основи логічного і функціонального програмування Електронний навчальний посібник.

Додаток


Лістинг програми.

DOMAINS

file = fop

line = integer * = line * (integer, line, line)

getlines (integer, integer, matrix, matrix)

getmatrix (integer, matrix) (line, line, line) (integer, matrix, matrix, matrix) (line, integer, integer) (matrix, integer, integer, integer) (integer, line , integer, line) (integer, matrix, integer, integer, matrix)

step (matrix, integer, integer, integer, integer, integer) (integer, matrix, integer, integer, integer, integer, integer)

printline (line, integer) (matrix, integer, integer) (matrix, integer, integer) (0, Line, Line): -

!. (Cnt, OldList, Line): - (Value), = [Value | OldList], = Cnt - 1, getline (NewCnt, Temp, Line). (0, _, NewMatrix , NewMatrix): -

!. (Cnt, MSize, OldMatrix, NewMatrix): - (MSize, [], Line), = [Line | OldMatrix], = Cnt - 1, getlines (NewCnt, MSize, Temp, NewMatrix). (MSize, OutputMatrix): - (MSize), (MSize, MSize, [], OutputMatrix). ([], OutputList, OutputList): -

!. ([H | T], List, OutputList): -

NewList = [H | List], (T, NewList, OutputList). (0, _, ModifiedMatrix, ModifiedMatrix): -

!. (Cnt, [H | T], TmpMatrix, ModifiedMatrix): - (H, [], ReversedLine), = [ReversedLine | TmpMatrix], = Cnt - 1, reverselines (NewCnt, T, NewMatrix, ModifiedMatrix).

getelemfromline ([H | T], 1, H): -

!. ([H | T], J, Elem): - = J - 1, getelemfromline (T, NewJ, Elem). ([H | T], 1, J, Elem) : -

!, getelemfromline (H, J, Elem). ([H | T], I, J, Elem): - = I - 1, getelem (T, NewI, J, Elem). (Mark, [H | T], 1, [Mark | T]): -

Назад | сторінка 3 з 4 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Пароплавна компанія White Star Line
  • Реферат на тему: Пароплавна компанія White Star Line
  • Реферат на тему: Технологія цифрової абонентської лінії (Digital Subscribe Line, DSL)
  • Реферат на тему: Equipment of technological acceptance line, storage and fuel delivery
  • Реферат на тему: Створення бази даних геореференсірованних фотографічних зображень грунтів в ...