1
リストのN番目の最初の要素を取得する関数を作成します。例えばリストのN番目の要素を取得する方法
:
>>(firsts 3 '(a b c d e))
リターン:(ABC)
私はそれを作っ:
(define (firsts number lst)
(let ((maliste '()))
(if (equal? 0 number)
maliste
(and (set! maliste (cons (car lst) maliste)) (firsts (- number 1) (cdr lst))))))
しかし、それは動作しません、私はLETを使うべきだと思うけど方法を知らない。
ありがとうございました。
は、私達はちょうどリストをトラバース要素の必要数が完了するまで、私たちが行くよう_new_リストを構築します。このパターンは非常に一般的なので、リストを消費してリストを返す多くの同様の問題を解決するためのテンプレートとして使用できます。 –