저는 Scheme을 처음 사용하는데 이것은 매우 기능적인 언어입니다. 재귀 적으로 거의 모든 것을 구현하는 것은 나에게 어색한 것 같다. 그럼에도 불구하고 단일 정수 입력을 갖는 Factorial 및 Fibonacci 문제의 기능을 구현할 수있었습니다.재귀 함수가 스키마에 목록을 받아들입니다.
그러나 함수에 목록이 입력되면 어떨까요? 이 운동을한다고 가정
기능 : ret10 - 목록 모든 숫자로 추출하여 반환 주어진 목록에서 발견되는 이상 10 , 교활>(ret10 '(XE (HN) 1 23 12시)) 출력 : (23 12)
나는이 있으시면이 내 함수의 인수로 (C (목록)을 정의)? 아니면 다른 방법이 있습니까?
도와주세요. 감사! 이 다른 사람을 도움이되기를 바랍니다 .. 아래 여기
은 선생님 오스카르 로페스의 대답에 내 파생 솔루션을 기반으로 :
(define (ret10 lst)
(cond
((null? lst) '())
((and (number? (car lst)) (> (car lst) 10))
(cons (car lst)
(ret10 (cdr lst))))
(else (ret10 (cdr lst)))
)
)
죄송합니다. 나는 10 이상을 의미했다.죄송합니다. 편집했습니다. –