2017-04-06 16 views
1

私はラケットで始まると私はラケットで、短所のリストのCDRを追加し、この関数の値を表示したいから開始:出力があるべきラケット、小さな問題

(define (add-cdrs '((a . 1)(a . 2)(a . 3)(a . 4))) 
(if (null? l) 
    0 
    (+ (cdr(car l))(add-cdrs(cdr l))))) 

:10

しかし、私はそれを行う方法や表示機能を置く場所がわかりません。

は、あなたが手続きにパラメータに実際のリストをバインドする手順呼び出し(と(この場合は、リストを保持するために使用されるパラメータを宣言する必要があります)定義が混乱している

答えて

3

ありがとう)。それ以外は、あなたのロジックは正しいです。試してみてください:

(define (add-cdrs lst) 
    (if (null? lst) 
     0 
     (+ (cdr (car lst)) (add-cdrs (cdr lst))))) 

(add-cdrs '((a . 1) (a . 2) (a . 3) (a . 4))) 
=> 10 
関連する問題