On Jun 29, 2011, at 1:45 AM, David Sletten wrote:
>
> (defn compute-contrib [daily-values total-values]
> (loop [contrib []
> daily-values daily-values
> total-values total-values]
> (if (empty? daily-values)
> contrib
> (recur (conj contrib (* (first daily-values) (reduce (fn [sum
> total-value] (* sum (+ (/ total-value 100.0) 1.0)))
> 1.0
> (rest
> total-values))))
> (rest daily-values)
> (rest total-values)))) )
>
Arrgghh! Now you've got me doing it too... :)
Replace 'sum' with 'product':
(defn compute-contrib [daily-values total-values]
(loop [contrib []
daily-values daily-values
total-values total-values]
(if (empty? daily-values)
contrib
(recur (conj contrib (* (first daily-values) (reduce (fn [product
total-value] (* product (+ (/ total-value 100.0) 1.0)))
1.0
(rest
total-values))))
(rest daily-values)
(rest total-values)))) )
Have all good days,
David Sletten
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en