% Author: % Date: 13/01/2018 zoo(rybnik, [zyrafa,krokodyl], [12,14]). zoo(zory, [zyrafa,krokodyl, rekin, orki], [13, 16, 10, 4]). zoo(tychy, [zebra,panda, dziki], [11, 12, 4]). % Napisz zapytanie, ktory wypisze jakie zwierzeta posiada dane zoo wypisz_zwierzaki(X, Y) :- zoo(X, Y, _). % Napisz regule, ktora wypisze srednia wieku w zoo (trzeci nawias) sredni_wiek_zwierzakow(X, Y) :- zoo(X, _, Z), sumlist(Z, Z1), length(Z, Z2), Y is Z1/Z2. % Napisz regule ktora wypisze nazwy zwierzat i ich wiek zwierzaki_wiek(X) :- zoo(X, Z, W), pisz_rzecz(Z, W). pisz_rzecz([], []). pisz_rzecz([Zh|Zt], [Wh|Wt]) :- write(Zh), write(' ma '), write(Wh), write(' lat'), nl, pisz_rzecz(Zt, Wt). % Napisz regule, ktora wypisze najmlodsze i najstarszy wiek zwierzecia w zadanym zoo stary_mlody(X) :- zoo(X, _, Z), min_list(Z, Mlody), max_list(Z, Stary), write('Najmlodsze zwierze ma '), write(Mlody), nl, write('Najstarsze zwierze ma '), write(Stary). % Napisz regule, ktora wypisze najmlodsze i najstarszy wiek zwierzecia razem z jego nazwa w zadanym zoo jakie_zwierze_jakie(X) :- zoo(X, Zwierzaki, Wiek), min_list(Wiek, Mlody), max_list(Wiek, Stary), write('Najmlodsze zwierze to '), pisz_wiek(Zwierzaki, Wiek, Mlody), nl, write('Najstarsze zwierze to '), pisz_wiek(Zwierzaki, Wiek, Stary). pisz_wiek([], [], _). pisz_wiek([Zh|_], [Wh|_], Wh) :- write(Zh), write(', '), write(Wh), write(' lat'). pisz_wiek([_|Zt], [_|Wt], Wiek) :- pisz_wiek(Zt, Wt, Wiek).