Matrix transposition: Difference between revisions
Content added Content deleted
m (→{{header|Common Lisp}}: -blank line) |
m (→{{header|Common Lisp}}: cleanup) |
||
Line 643: | Line 643: | ||
<lang lisp>;; Transpose a mxn matrix A to a nxm matrix B=A'. |
<lang lisp>;; Transpose a mxn matrix A to a nxm matrix B=A'. |
||
(defun mtp (A) |
(defun mtp (A) |
||
(let* ((m |
(let* ((m (array-dimension A 0)) |
||
(n |
(n (array-dimension A 1)) |
||
(B (make-array `(,n ,m) :initial-element 0))) |
(B (make-array `(,n ,m) :initial-element 0))) |
||
(loop for i from 0 |
(loop for i from 0 below m do |
||
(loop for j from 0 |
(loop for j from 0 below n do |
||
(setf (aref B j i) |
(setf (aref B j i) |
||
(aref A i j)))) |
(aref A i j)))) |