Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Prolog (поиск в списке по условию) / 1 сообщений из 1, страница 1 из 1
06.05.2010, 13:24:24
    #36615112
knopa85
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Prolog (поиск в списке по условию)
Добрый день. Вот код программы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
domains
  day,month=Integer  
  DayWeek,Name,yspex,Fname,Iname,Oname,work=string

  Fio=fio(Fname,Iname,Oname)
  Examinator=exm(Fio,work)

  StyleNew=stNew(day,month)             
  StyleOld=stOld(day,month)             
  date=dt(StyleNew,StyleOld)  


  exam=exm(date,yspex,examinator);  % экзамены либо сдаем либо нет
         noexm(yspex,Examinator)

  ex=exx(name,exam) 
  examen=ex*        % список экзаменов

predicates
 zapros_exam  
 sessiya(DayWeek,examen)

clauses

  sessiya("Понедельник",[exx("Иностранная география",exm(dt(stNew( 21 , 05 ),stOld( 01 , 05 )),"Занимался",exm(fio("Муров","Максим","Максимович"),"Доцент"))),
                     exx("Чистая математика",exm(dt(stNew( 29 , 05 ),stOld( 09 , 06 )),"Занимался",exm(fio("Петров","Петр","Петрович"),"Доктор")))]).

  sessiya("Вторник",[exx("Латинский язык",exm(dt(stNew( 15 , 05 ),stOld( 26 , 05 )),"Весьма хорошо",exm(fio("Иванов","Иван","Иванович"),"Доцент"))),
                     exx("Всеобщая история",exm(dt(stNew( 22 , 05 ),stOld( 02 , 06 )),"Занимался",exm(fio("Петров","Петр","Петрович"),"Доктор"))),
                     exx("Прикладная математика",exm(dt(stNew( 29 , 05 ),stOld( 09 , 06 )),"Занимался",exm(fio("Титов","Дмитрий","Иванович"),"КМН")))]).

  sessiya("Среда",[exx("Закон Божий",exm(dt(stNew( 16 , 05 ),stOld( 27 , 05 )),"Хорошо",exm(fio("Сидоров","Петр","Иванович"),"Доцент"))),
                     exx("Полит экономия",exm(dt(stNew( 23 , 05 ),stOld( 03 , 06 )),"Весьма хорошо",exm(fio("Миронов","Иван","Петрович"),"Доктор"))),
                     exx("Фортификация и артиллерия",exm(dt(stNew( 30 , 05 ),stOld( 10 , 06 )),"Отсутствие интереса",exm(fio("Коновалов","Дмитрий","Иванович"),"Доцент")))]).

  sessiya("Четверг",[exx("Российская словестность",exm(dt(stNew( 17 , 05 ),stOld( 28 , 05 )),"Превосходно",exm(fio("Иванов","Иван","Иванович"),"Доцент"))),
                     exx("Частное право",exm(dt(stNew( 24 , 05 ),stOld( 04 , 06 )),"Хорошо",exm(fio("Козлов","Кирил","Дмитриевич"),"Доктор"))),
                     exx("Физика",exm(dt(stNew( 31 , 05 ),stOld( 10 , 06 )),"Отсутствие интереса",exm(fio("Титов","Дмитрий","Иванович"),"КМН")))]).

  sessiya("Пятница",[exx("Немецкая словестность",exm(dt(stNew( 18 , 05 ),stOld( 29 , 05 )),"Занимался",exm(fio("Иванов","Иван","Иванович"),"Доцент"))),
                     exx("Уголовное право",exm(dt(stNew( 25 , 05 ),stOld( 05 , 06 )),"Хорошо",exm(fio("Козлов","Кирил","Дмитриевич"),"Доктор")))]).

  sessiya("Суббота",[exx("Французкая словестность",exm(dt(stNew( 19 , 05 ),stOld( 30 , 05 )),"Превосходно",exm(fio("Демидов","Иван","Иванович"),"Профессор"))),
                     exx("Отечественная география",exm(dt(stNew( 26 , 05 ),stOld( 06 , 06 )),"Занимался",exm(fio("Муров","Максим","Максимович"),"Доцент")))]).


  sessiya("Net",[exx("Логика",noexm("Хорошо",exm(fio("Карамазов","Максим","Максимович"),"Профессор"))),
             exx("Нравственная философи",noexm("Хорошо",exm(fio("Карамазов","Валентин","Максимович"),"Доцент"))),
             exx("Фехтование",noexm("Превосходно",exm(fio("Курашев","Дмитрий","Петрович"),"Профессор")))]).
 
  
  %Какие экзамены в субботу
  zapros_exam:-sessiya(A,B),A="Суббота",write("В ",A,' ',B,' '),nl,fail;true.



Помогите написать запрос к этой программе по которому она выведет, название всех экзаменов которые будут в период по StyleNew с 15,05 по 19,05 ??? я никак не могу понять как писать запрос к спискам
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Prolog (поиск в списке по условию) / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]