0
(define-struct position (name numshares share-price))

(define p1
(cons (make-position "INT" 10 192) (cons (make-position "SSS" 4 42) 
empty)))

mult私のヘルパー関数です

(define (mult  n)
     ( * (position-numshares n) 
     (position-share-price n)))

const は、リスト内の position-numshares と position-share-price を取り、それらを乗算します。

(define (const n)
  (cond
    [(empty? n) empty]

     [(cons? n)
       (+ (mult (first n))
                )]))

私がやりたいことは、リストの最初のものを取り、残りのリストを一緒に追加することです。代わりに、リストの最初のものだけを取得します。したがって、(const p1) を実行すると 1920 しか得られませんが、2088 (10*192 + 4*42) を得たいと考えています。残りの繰り返しを試みましたが、エラーが発生しました。私はおそらく単純なものを見逃しています。助けていただければ幸いです。

4

1 に答える 1