Spróbujmy odpowiedzieć na następujące pytania:
Znajdź imiona i nazwiska wszystkich osób w bazie
Znajdź wszystkie dzieci urodzone w 1980 roku
dziecko(osoba(X,Y,data(_,_,1980),_)).
Znajdź wszystkie żony, które pracują
zona(osoba(X,Y,_,pracuje(_,_))).
Znajdź osoby urodzone przed 1950 rokiem, których pensja jest mniejsza niż 3000
istnieje(X), data_urodzenia(X,data(_,_,Y)),Y<1950,pensja(X,Z),Z<3000.
Jakie są zarobki poszczególnych rodzin
rodzina(X,Y,Z),zarobki([X,Y|Z],P).
Wypisz rodziny tylko z jednym dzieckiem.
Znajdź wszystkie bezrobotne dzieci.
Znajdź wszystkie niepracujące żony.
Znajdź wszystkie małżeństwa, których różnica wieku męża i żony wynosi, co najmniej 10 lat.
% dane
rodzina(
osoba(jan, kowalski,data(5,kwiecien,1946),pracuje(tpsa,3000)),
osoba(anna,kowalski,data(8,luty,1949), pracuje(szkola,1500)),
[
osoba(pawel,kowalski,data(15,listopad,1979),zasilek),
osoba(maria,kowalski,data(20,maj,1973), pracuje(kghm,4000)) ]).
rodzina(
osoba(krzysztof, malinowski, data(24,lipiec,1945), bezrobocie),
osoba(klara, malinowski, data(9,styczen,1960), pracuje(kghm,8000)),
[
osoba(monika, malinowski, data(19,wrzesien,1980), bezrobocie)]
).
rodzina(
osoba(paweł malin, data(14,lipiec,1989), pracuje(kghm,9000),
osoba(piotr, malin, data(9,marzec,1970), pracuje(kghm,1200)),
[
osoba(sylwia, malin, data(2,grudzien,1990), bezrobocie)]
).
% zaleznosci
maz(X) :-
rodzina(X,_,_).
zona(X) :-
rodzina(_,X,_).
dziecko(X) :-
rodzina(_,_,Dzieci),
nalezy(X,Dzieci).
istnieje(Osoba) :- % sprawdzenie czy dana osoba isnieje w bazie
maz(Osoba)
;
zona(Osoba)
;
dziecko(Osoba).
data_urodzenia(osoba(_,_,Data,_),Data).
pensja(osoba(_,_,_,pracuje(_,P)),P). % pensja pracującej osoby
pensja(osoba(_,_,_,zasilek),500).
pensja(osoba(_,_,_,bezrobocie),0).
zarobki([],0).
zarobki([Osoba|Lista],Suma) :- % zarobki rodziny, jako suma zarobków wszystkich członków rodziny
pensja(Osoba,S),
zarobki(Lista,Reszta),
Suma is S + Reszta.
% narzedzia
nalezy(X,[X|_]). % sprawdzenie czy należy do listy
nalezy(X,[_|Yogon]) :-
nalezy(X,Yogon).
istnieje(osoba X,Y,_,_)).
|
Wyszukiwarka
Podobne podstrony:
RODZINA zadania wyzwaniaAnaliza Matematyczna 2 ZadaniaZARZĄDZANIE FINANSAMI cwiczenia zadania rozwiazaneEZADANIE (11)zadanie domowe zestawrodzinkaNaturalne planowanie rodziny Anna GabrielaZadania 1W 4 zadanie wartswa 2013Sprawdzian 5 kl 2 matematyka zadaniarozporządzenie ministra sprawiedliwości w sprawie określenia wzoru oświadczenia o stanie rodzinnymzadania1Zadania 2015 9więcej podobnych podstron