(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 两次,它被调用两次然后中断程序。有没有办法让我将用户输入的任何内容存储到变量中,然后在整个程序中使用该变量?或者这个问题有其他解决方案吗?