ZAD.1
(defstruct auto cijena snaga boja)
(setq ka(make-auto :cijena 1 :snaga 1 :boja 1))
(setq fiat(make-auto :cijena 2 :snaga 2 :boja 2))
(setq mercedes(make-auto :cijena 3 :snaga 3 :boja 3))
(setq a(list ka fiat mercedes))
(defun fun (x) (setq max 0) (setq rez nil) (dolist (i x) (when (>
(auto-cijena i) max) (setq rez i) (setq max (auto-cijena i)))) rez)

ZAD.2
[20]> (defun check-fly (concept)
(setq k (get concept 'property))
(cond ((eq k nil) nil)
((eq k 'flyingbird) T)
(T (check-fly k))))
CHECK-FLY
[21]> (defun put (symbol name value)
(setf (get symbol name) value))
PUT
[22]> (put 'mammal 'isa 'animal)
ANIMAL
[23]> (put 'bird 'isa 'animal)
ANIMAL
[24]> (put 'bird 'property 'flyingbird)
FLYINGBIRD
[25]> (put 'woodpecker 'isa 'bird)
BIRD
[26]> (put 'woodpecker 'property 'bird)
BIRD
[27]> (put 'wren 'isa 'bird)
BIRD
[28]> (put 'wren 'property 'bird)
BIRD
[29]> (put 'ostrich 'isa 'bird)
BIRD
[30]> (put 'ostrich 'property 'notflyingbird)
NOTFLYINGBIRD
[31]> (check-fly 'wren)
T
[32]> (check-fly 'ostrich)
NIL
[33]> (check-fly 'woodpecker)
T
[34]>