0
我试图修改我在SOF上发现的元音代码,在下面发表,我试图把它变成一个单词列表,以便我可以检查单词是否在列表中。不过,我不断收到错误:查找列表中的字符串
;; A list of words
(define words-list (cons #\dog (cons #\pig)
;; split-string : string -> (listof string-pieces)
;; converts a string into a list of string pieces.
(define (split-string a-string)
(string->list a-string))
;; has-word? : string-piece -> boolealn
;; checks whether a string-piece is a vowel
(define (has-word? string-piece words)
(cond ((empty? words) false)
((equal? string-piece (first words)) true)
(else (has-word? string-piece (rest words)))))
;; Test
(check-expect (has-word? #\i word-list) true)
(check-expect (has-word? #\x word-list) false)
;; contains-words-list : (listof string-pieces) -> boolean
;; determines whether any items on a list of string-pieces
;; contains a piece that represents a word, from a list of words.
(define (contains-words-list losp)
(cond ((empty? losp) false)
((false? (has-word? (first losp) words-list))
(contains-words-list (rest losp)))
(else (has-word? (first losp) words-list))))
;; Test
(check-expect (contains-word-list (cons #\h (cons #\i empty))) true)
(check-expect (contains-word-list (cons #\h (cons #\h empty))) false)
;; contains-word? : string -> boolean
;; checks whether a string contains a vowel.
(define (contains-word? a-string)
(contains-word-list (split-string a-string)))
;; Test
(check-expect (contains-word? "pig") true)
我不断收到类似的错误缺点的狗和猪是太大了,它不会产生正确的输出,任何指导将是巨大的