Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;Problema [1]
- (defun fetch (x lista)
- (if (assoc x lista) (cadr (assoc x lista)) (format t "Proprietatea nu exista."))
- )
- ;EXEMPLU
- ;> (setq x '((temp 100) (pres 80 60) (p 10)))
- ;((TEMP 100) (PRES 80 60) (P 10))
- ;> (fetch 'temp x)
- ;100
- ;> (fetch 'test x)
- ;Proprietatea nu exista.
- ;____________________________________________________________________
- ;Problema [2]
- (defun chei (lista)
- (do ((l lista (cdr l)) (rez nil (append rez (list (caar l)))))
- ((null l) rez)
- )
- )
- ;EXEMPLU
- ;> (setq x '((temp 100) (pres 80 60) (p 10)))
- ;((TEMP 100) (PRES 80 60) (P 10))
- ;> (chei x)
- ;(TEMP PRES P)
- ;____________________________________________________________________
- ;Problema [3]
- (defun bunic (x)
- (get (get x 'tata) 'tata)
- )
- ;EXEMPLU
- ;> (setf (get 'a 'tata) 'b)
- ;B
- ;> (setf (get 'b 'tata) 'c)
- ;C
- ;> (bunic 'a)
- ;C
- ;____________________________________________________________________
- ;Problema [4]
- (defun adam (x)
- (do ((l x (get l 'tata)))
- ((null (get l 'tata)) l)
- )
- )
- ;EXEMPLU
- ;> (setf (get 'a 'tata) 'b)
- ;B
- ;> (setf (get 'b 'tata) 'c)
- ;C
- ;> (adam 'a)
- ;C
- ;> (adam 'b)
- ;C
- ;____________________________________________________________________
- ;Problema [5]
- (defun stramosi (x lista)
- (cond
- ((not (null x)) (setq lista (append lista (list x))) (stramosi (get x 'tata) lista))
- (t lista)
- )
- )
- ;____________________________________________________________________
- ;Problema [6]
- (defmacro define (nume param corp)
- `(defun,nume,param,corp)
- )
- ;____________________________________________________________________
- ;Problema [7]
- (
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement