【入門】CommonLisp【質問よろず】at TECH
【入門】CommonLisp【質問よろず】 - 暇つぶし2ch616:デフォルトの名無しさん
05/10/02 04:39:29
>>606
宿題だとすると labels の内部関数はつかっちゃだめかも?ということで
親切にも別解だっ.

;; 再帰関数一つ
(defun plus-minus (lst &optional plus minus &aux (x (car lst)) (xs (cdr lst)))
(cond ((null x)
(values plus minus))
((>= x 0)
(plus-minus xs (cons x plus) minus))
(t
(plus-minus xs plus (cons x minus)))))

;; メソッド一つ
(defmethod plus-minus-2 ((lst null) &optional plus minus)
(values plus minus))
(defmethod plus-minus-2 ((lst cons) &optional plus minus)
(if (>= (car lst) 0)
(plus-minus-2 (cdr lst) (cons (car lst) plus) minus)
(plus-minus-2 (cdr lst) plus (cons (car lst) minus))))



次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch