私はLispの初心者であり、prog
フォームがどのように機能するかを段階的に説明してくれる人が必要です。l1の初期値はいくつですか?なし?
リストの最初のレベルに偶数の要素がある場合、問題はTを出力し、そうでない場合はnilを出力します。
(defun nr_par (l)
(prog ((l1 l))
ciclu
(cond
((null l1) (return T))
((null (cdr l1)) (return NIL))
((null (cddr l1)) (return T))
(T (setf l1 (cddr l1))
(go ciclu)))))
コンソールの場合:
(nr_par '(1 2 3 4 5 6 7 8))
T