Array concatenation: Difference between revisions
Content added Content deleted
m (moved to Common Lisp) |
|||
Line 665:
<lang lisp>(concatenate 'vector #(0 1 2 3) #(4 5 6 7))
=> #(0 1 2 3 4 5 6 7)</lang>
===Alternate solution===
I use [https://franz.com/downloads/clp/survey Allegro CL 10.1]▼
<lang lisp>▼
(setf arr1 (make-array '(3) :initial-contents '(1 2 3)))▼
(setf arr2 (make-array '(3) :initial-contents '(4 5 6)))▼
(setf arr3 (make-array '(3) :initial-contents '(7 8 9)))▼
(setf arr4 (make-array '(6)))▼
(setf arr5 (make-array '(9)))▼
(setf arr4 (concatenate `(vector ,(array-element-type arr1)) arr1 arr2))▼
(format t "~a" "concatenate arr1 and arr2: ")▼
(write arr4)▼
(terpri)▼
(setf arr5 (concatenate `(vector ,(array-element-type arr1)) arr4 arr3))▼
(format t "~a" "concatenate arr4 and arr3: ")▼
(write arr5)▼
(terpri)▼
</lang>▼
Output:▼
<pre>▼
concatenate arr1 and arr2: #(1 2 3 4 5 6)▼
concatenate arr4 and arr3: #(1 2 3 4 5 6 7 8 9)▼
</pre>▼
=={{header|Component Pascal}}==
Line 1,664 ⟶ 1,687:
put a
-- [1, 2, 3, 4, 5]</lang>
▲I use [https://franz.com/downloads/clp/survey Allegro CL 10.1]
▲<lang lisp>
▲(setf arr1 (make-array '(3) :initial-contents '(1 2 3)))
▲(setf arr2 (make-array '(3) :initial-contents '(4 5 6)))
▲(setf arr3 (make-array '(3) :initial-contents '(7 8 9)))
▲(setf arr4 (make-array '(6)))
▲(setf arr5 (make-array '(9)))
▲(setf arr4 (concatenate `(vector ,(array-element-type arr1)) arr1 arr2))
▲(format t "~a" "concatenate arr1 and arr2: ")
▲(write arr4)
▲(terpri)
▲(setf arr5 (concatenate `(vector ,(array-element-type arr1)) arr4 arr3))
▲(format t "~a" "concatenate arr4 and arr3: ")
▲(write arr5)
▲(terpri)
▲</lang>
▲Output:
▲<pre>
▲concatenate arr1 and arr2: #(1 2 3 4 5 6)
▲concatenate arr4 and arr3: #(1 2 3 4 5 6 7 8 9)
▲</pre>
=={{header|Little}}==
|