-
Notifications
You must be signed in to change notification settings - Fork 0
/
TP logico primera parte
50 lines (37 loc) · 1.04 KB
/
TP logico primera parte
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
%pareja(Persona, Persona)
pareja(marsellus, mia).
pareja(pumkin,honeyBunny).
%2) Más parejas
pareja(bernardo,bianca).
pareja(bernardo,charo).
%No se sabe si Bianca es pareja de Demóstenes.
%No hace falta,por principio de universo cerrado.
%trabajaPara(Empleador, Empleado)
trabajaPara(marsellus, vincent).
trabajaPara(marsellus, jules).
trabajaPara(marsellus, winston).
% 3) Nuevos trabajadores
trabajaPara(Quien,bernardo):-
trabajaPara(marsellus,Quien),
Quien\=jules.
trabajaPara(Empleador,george):-
saleCon(bernardo,Empleador).
%1) Salen juntos.
saleCon(Quien,Cual):-
pareja(Quien,Cual).
saleCon(Quien,Cual):-
pareja(Cual,Quien).
% 4) Fidelidad
esFiel(Personaje):-
saleCon(Personaje,_),
not((saleCon(Personaje, OtroPersonaje1),
saleCon(Personaje, OtroPersonaje2),
OtroPersonaje1\=OtroPersonaje2)).
%5) Acatar órdenes
%caso base
acataOrden(Jefe, OtroPersonaje1):-
trabajaPara(Jefe,OtroPersonaje1).
%caso recursivo
acataOrden(Jefe, OtroPersonaje2):-
trabajaPara(Jefe, OtroPersonaje1),
acataOrden(OtroPersonaje1, OtroPersonaje2).