2012-01-30 38 views
1

要素をn個の位置からm個の位置に取得しようとしています。しかし、私はいくつかのエラーを取得します。 どうすれば修正できますか?リストから要素を取得する

(defun element (list start end) 
(dotimes (start end) (n-esimo list start) 
)) 

(defun n-esimo (l n) 
    (cond ((equal n 0) (first l)) 
     (t (n-esimo (rest l) (- n 1))))) 
+0

どのようなエラーが表示されますか? –

+0

NILを取得します。エラーはありませんが、nilと空のリストは空ではありません。 – marchetto91

+0

'N-esimo'は既にCommon Lisp標準に存在し、' nth'と呼ばれています(逆も同様です)。 「Dotimes」は、あなたが思うとは思わない。それをHyperspecで見てください。 「clhs dotimes」を検索して – Svante

答えて

5

それを記述する必要はありません(あなたのタスクは、あなたがして、または他の教育目的のために、あなたの質問にタグhomeworkを追加することによって、私たちに教えなければならない宿題の一部である場合を除きます。)。 Common Lispにはこの関数が組み込まれています。それはSUBSEQと呼ばれます。

関連する問題