Exercise 1.33
(define (filtered-accumulate combine pred? id term a next b)
(define (iter a acc)
(cond ((> a b) acc)
((pred? a)
(iter (next a) (combine (term a) acc)))
(else (iter (next a) acc))))
(iter a id))
- Sum of squares of primes in the interval form
atob:
```scheme (define (sum-squared-primes a b) (filtered-accumulate + prime? 0 square a inc b))
(sum-squared-primes 10 15) => 290
```
- Product of positive integers below
nrelatively prime ton:
```scheme (define (product-rel-prime n) (define (rel-prime? i) (= (gcd i n) 1)) (filtered-accumulate * rel-prime? 1 identity 1 inc (- n 1)))
(product-rel-prime 10) => (* 3 7 9)
```