nlattessi

Seminario_TP3_EJ10

May 9th, 2012
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lisp 0.94 KB | None | 0 0
  1. a)
  2. (defun SumaMatriz (m1 m2)
  3.     (defun SumaVectores (v1 v2)
  4.         (if (null v1) nil
  5.             (cons (+ (car v1) (car v2)) (SumaVectores (cdr v1) (cdr v2)))
  6.         )
  7.     )
  8.     (if (null m1) nil
  9.         (append (list (SumaVectores (car m1) (car m2)))
  10.             (SumaMatriz (cdr m1) (cdr m2)))
  11.     )
  12. )
  13.  
  14. b)
  15. (defun traspuesta (l)
  16.     (defun cab (l)
  17.         (if (null l) nil
  18.             (cons (caar l) (cab (cdr l)))
  19.         )
  20.     )
  21.     (defun quitacab (l)
  22.         (if (null l) nil
  23.             (append (list (cdar l)) (quitacab (cdr l)))
  24.         )
  25.     )  
  26.     (if (null (car l)) nil
  27.         (append (list (cab l))(traspuesta (quitacab l)))
  28.     )
  29. )
  30.  
  31.  
  32. (defun ProductoMatriz (mat1 mat2)
  33.     (defun calculo (l1 l2)
  34.         (if (null l1) 0
  35.             (+ (* (car l1) (car l2)) (calculo (cdr l1) (cdr l2)))
  36.         )
  37.     )
  38.     (defun corta (l l2)
  39.         (if (null l2) nil  
  40.             (cons (calculo l (car l2)) (corta l (cdr l2)))
  41.         )
  42.     )
  43.     (defun larga (l l2)
  44.         (if (null l) nil
  45.             (append (list (corta (car l) l2)) (larga (cdr l) l2))
  46.         )
  47.     )
  48.     (larga mat1 (traspuesta mat2))
  49. )
Advertisement
Add Comment
Please, Sign In to add comment