-
Notifications
You must be signed in to change notification settings - Fork 3
/
agencia matrimonial.pl~
71 lines (62 loc) · 1.72 KB
/
agencia matrimonial.pl~
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
%hombres
hombre(martin,media,rubio,joven).
hombre(gonzalo,alta,castaño,joven).
hombre(lucas,baja,castaño,joven).
hombre(david,alta,negro,adulta).
hombre(roberto,baja,negro,viejo).
%mujeres
mujer(laura,alta,castaño,joven).
mujer(martina,media,rubio,joven).
mujer(tatiana,baja,negro,joven).
mujer(jessica,alta,negro,adulta).
mujer(eugenia,baja,negro,joven).
%gustos de los hombres
gusta(martin,pop,ciencia_ficcion,natacion).
gusta(gonzalo,pop,aventura,jogging).
gusta(lucas,jazz,policiaca,tenis).
gusta(david,jazz,policiaca,tenis).
gusta(roberto,clasica,aventura,tenis).
%gustos de las mujeres
gusta(laura,pop,aventura,jogging).
gusta(martina,pop,ciencia_ficcion,natacion).
gusta(tatiana,clasica,aventura,gogging).
gusta(jessica,jazz,policiaca,tenis).
gusta(eugenia,clasica,ciencia-ficcion,natacion).
%mujeres buscadas por los hombres
busca(martin,media,rubio,joven).
busca(gonzalo,alta,castaña,joven).
busca(lucas,baja,pelirroja,adulta).
busca(david,alta,negro,adulta).
busca(roberto,media,negro,joven).
%hombres buscados por las mujeres
busca(laura,alta,castaña,joven).
busca(martina,media,rubio,joven).
busca(tatiana,media,castaña,joven).
busca(jessica,alta,negro,adulta).
busca(eugenia,baja,castaña,joven).
%personas adecuadas
adecuados(X,Y):-
sexosDiferentes(X,Y),
conviene(X,Y),
conviene(Y,X).
%personas de sexos diferentes
sexosDiferentes(X,Y):-
hombre(X,_,_,_),
mujer(Y,_,_,_).
sexosDiferentes(X,Y):-
mujer(X,_,_,_),
hombre(Y,_,_,_).
%a la persona X le conviene la persona Y
conviene(X,Y):-
hombre(Y,A,C,E),
busca(X,A,C,E),
mismosGustos(X,Y).
conviene(X,Y):-
mujer(Y,A,C,E),
busca(X,A,C,E),
X\==Y.
%personas con los mismos gustos
mismosGustos(X,Y):-
gusta(X,M,L,S),
gusta(Y,M,L,S),
X\==Y.