我编写了一个接受字符列表的函数,并检查元音实例在列表中的次数。
尝试此功能时出现以下错误:
包含?:undefined;
;不能引用未定义的标识符
; [,bt for context]
功能:
(define (count list)
(if (and(null? (cdr list))
(contains?(vowels)(car list)))
(+ counter 1)
(if(and (contains?(vowels)(car list))
(not(contains?(vowels)(cadr list))))
(+ counter 1)
(count(cdr list)))))
答案 0 :(得分:0)
contains?
不属于R5R,R6RS或R7RS,因此不属于任何当前的Scheme标准。
在目前的标准中,我们有一些适用的地方:member
, memv
, and memq
:
(member '(b) '((a) (b) (c))) ; ==> ((b) (c))
(member '(q) '((a) (b) (c))) ; ==> #f
member
使用equal?
检查同一个对象。其他人使用eqv?
(数字)和eq?
(身份)。