(define (getFirstFew lst)
(cond
((= (read) 0) '()) ;returns nothing
(else(cons (car lst)(getFirstFew (cdr lst)(- (read) 1))))))
それが上記の私のコードです。だから私はリストから最初の x 要素を取得するプロシージャを作成しようとしています (ユーザーは x が何になるかを選択できます)。たとえば、(getFirstFew '(1 6 2 4 5)) で 4 を入力すると、'(1 6 2 4) になります。
これに関する私の現在の問題は、 read を2回使用すると、2回呼び出されてプログラムが壊れることです。ユーザーが入力したものを変数に格納し、プログラム全体でその変数を使用する方法はありますか? または、この問題に対する別の解決策はありますか?