Форум программистов, компьютерный форум, киберфорум
Наши страницы
Prolog
Войти
Регистрация
Восстановить пароль
 
Aleks89
0 / 0 / 0
Регистрация: 20.01.2012
Сообщений: 3
1

метод резолюции

10.04.2012, 23:46. Просмотров 563. Ответов 0
Метки нет (Все метки)

Prolog
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
domains 
 
i=integer
list=i*
list2=list*
s=symbol
 
predicates
 
vopr(list2,list2).
peresech(list,list,list,list,list,i).
vibor(i,i,i).
while(list2,list2,list2,list2,list2).
proverka(list,i,list2).
func(i,list,list2,list2).
obratnii(list,list,list).
sovmestimi_li(list,list,i,i,i).
obedinenie(list,list,list,list).
add(list2,list,list2).
elem(list2,list,i).
vse_2(list,i).
clauses
 
vibor(1,1,0).
vibor(1,2,0).
vibor(2,1,0).
vibor(2,2,0).
vibor(0,2,0).
vibor(2,0,0).
vibor(0,0,0).
vibor(0,1,1).
vibor(1,0,1).
vopr(List,R):-while(List,List,List,List,R).
 
while([X|List],[],T,L,Rez):-while(List,List,T,L,Rez).
while([],[],T,T,Rez):-Rez=[[0]].
while([],[],T,L,Rez):-not(T=L),while(T,T,T,T,Rez).
 
while([X|List],[Y|List1],T,L,Rez):-peresech(X,Y,X,Y,D,0),proverka(D,Z,T),Z=3,Rez=[[1]].
while([X|List],[Y|List1],T,L,Rez):-peresech(X,Y,X,Y,D,0),proverka(D,Z,T),not(Z=3),func(Z,D,T,T1),while([X|List],List1,T1,L,Rez).
 
func(1,D,T,T1):-T1=T.
func(2,D,T,T1):-elem(T,D,I),I=1,add(T,D,T1).
func(2,D,T,T1):-elem(T,D,I),I=0,T1=T.
 
proverka([],1,T).
proverka([A|L],Z,T):-vse_2([A|L],F),F=1,Z=3.
proverka([A|L],Z,T):-vse_2([A|L],F),F=0,elem(T,[A|L],I),I=0,Z=1.
proverka([A|L],Z,T):-vse_2([A|L],F),F=0,elem(T,[A|L],I),I=1,Z=2.
 
peresech([],[],L1,L2,[],I).
peresech([X|List1],[Y|List2],L1,L2,L,N):-vibor(X,Y,T),T=0,N1=N+1,peresech(List1,List2,L1,L2,L,N1).
peresech([X|List1],[Y|List2],L1,L2,L,N):-vibor(X,Y,T),T=1,sovmestimi_li(L1,L2,0,N,I),I=0,L=[].
peresech([X|List1],[Y|List2],L1,L2,L,N):-vibor(X,Y,T),T=1,sovmestimi_li(L1,L2,0,N,I),I=1,obedinenie(L1,L2,[],L).
 
sovmestimi_li([],[],N1,N,1).
sovmestimi_li([X|L1],[Y|L2],N,N,I):-N1=N+1,sovmestimi_li(L1,L2,N1,N,I).
sovmestimi_li([X|L1],[Y|L2],N1,N,I):-N1<N,vibor(X,Y,K),K=1,I=0.
sovmestimi_li([X|L1],[Y|L2],N1,N,I):-N1>N,vibor(X,Y,K),K=1,I=0.
sovmestimi_li([X|L1],[Y|L2],N1,N,I):-N1<N,vibor(X,Y,K),K=0,N2=N1+1,sovmestimi_li(L1,L2,N2,N,I).
sovmestimi_li([X|L1],[Y|L2],N1,N,I):-N1>N,vibor(X,Y,K),K=0,N2=N1+1,sovmestimi_li(L1,L2,N2,N,I).
 
obedinenie([],[],R,L):-obratnii(R,[],L).
obedinenie([2|L1],[2|L2],R,L):-R2=[2|R],obedinenie(L1,L2,R2,L).
obedinenie([0|L1],[1|L2],R,L):-R2=[2|R],obedinenie(L1,L2,R2,L).
obedinenie([1|L1],[0|L2],R,L):-R2=[2|R],obedinenie(L1,L2,R2,L).
obedinenie([0|L1],[0|L2],R,L):-R2=[0|R],obedinenie(L1,L2,R2,L).
obedinenie([1|L1],[1|L2],R,L):-R2=[1|R],obedinenie(L1,L2,R2,L).
obedinenie([2|L1],[1|L2],R,L):-R2=[1|R],obedinenie(L1,L2,R2,L).
obedinenie([1|L1],[2|L2],R,L):-R2=[1|R],obedinenie(L1,L2,R2,L).
obedinenie([2|L1],[0|L2],R,L):-R2=[0|R],obedinenie(L1,L2,R2,L).
obedinenie([0|L1],[2|L2],R,L):-R2=[0|R],obedinenie(L1,L2,R2,L).
 
obratnii([],T,T).
obratnii([X|R],T,L):-T1=[X|T],obratnii(R,T1,L).
 
add(L,X,[X|L]).
 
elem([],X,I):-I=1.
elem([X|L],X,I):-I=0.
elem([Y|L],X,I):-not(X=Y),elem(L,X,I).
 
vse_2([],1).
vse_2([X|L],I):-not(X=2),I=0.
vse_2([2|L],I):-vse_2(L,I).
ребят помогите пожалуйста разобраться в коде
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 23:46
Ответы с готовыми решениями:

Параллельный метод резолюции
Привет! Во вложениях 2 картинки с алгоритмом. По идее он должен быть...

Задача, метод резолюции
в общем само условие: Некоторые улитки являются горами. Все горы любят кошек....

Предикаты и метод резолюции
Ребят, помогите, пожалуйста, последний зачет остался, вообще в этом не шарю.....

Проверка истинности. Метод резолюции
(А→В), (В→С), (С→D), A &amp; B ├ B&amp;D //как решать подобное я вообще не знаю, но...

Преобразовать теоремы в вопросы и получить ответы (метод резолюции)
Добрый вечер. Помогите преобразовать теоремы в вопросы и получить ответы. ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2012, 23:46

Смена резолюции экрана
Есть ли какая-то возможность изменить резолюцию экрана на клиенте? Проблема...

Автоматическая подстрояка к резолюции экрана.
У меня экрaн 800x600 Вoпрoс кaк сделaть чтoбы нa кoпмaх с другoй резoлюцией...

СЛАУ. Метод обратной матрицы, метод Гаусса, метод Крамера, метод Зейделя
Помогите ребят. Не могу построить алгоритмы для этих методов Язык C++


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru