2017-03-13 13 views
0
(def text1 "qwwqer qwasdfas") 
(defn countL [text char] (reduce 0 
           #(if (= %2 char) (+ %1 1) (+ %1 0)) 
           text) 
) 
(println (countL text1 "q")) 

をreciveなぜ私はunderstendないが、私はその理由を理解していませんか?私に説明してください。私はこのコードを書いて、このエラーをreciveこの

+4

引数の順序が間違っています。あなたは '(f val collを減らす)'が必要です。だから、 '0'は明らかに関数ではありません。ちょうどそれらを交換してください。 – leetwinski

+0

まあまあ、これを見ていない...しかし、今私は新しい問題を抱えています. –

+1

なぜなら還元関数は文字列 'countL'を渡している間に* chars *で動作するからです。だから 'char q'!=" q "。 '(countL text1 \ q)' – leetwinski

答えて