loading d:/classes/cs342/lib/displayln.scm ... loading d:/classes/cs342/lib/test-homework.scm ... > (load "sum-examples.scm") # > (sum-integers 1 5) 15 > (+ 1 2 3 4 5) 15 > (sum-integers 5 10) 45 > (+ 5 6 7 8 9 10) 45 > (sum-integers 3 1005) 505512 > (define (cube x) (* x x x)) # > (sum-cubes 1 3) 36 > (+ 1 8 27) 36 > (* 8 (pi-sum 1 20)) 3.0418396189294 > (* 8 (pi-sum 1 1000)) 3.13959265558978 > (* 8 (pi-sum 1 10000)) 3.14139265359179 > (load "sum") # > sum # a b) 0 (+ (term a) (sum term (next a) next b)))> > (define (sum-cubes a b) (sum cube a next-for-cube b)) # > (define (next-for-cube a) (+ a 1)) # > sum-cubes # > (sum-cubes 1 3) 36 > (sum-cubes 1 4) 100 > (define (sum-integers a b) (sum identity a next-for-cube b)) # > (sum-integers 1 10) 55 > identity # > (define (identity a) a) # > (sum-integers 1 10) 55 > (define (pi-sum a b) (sum pi-term a pi-next b)) # > (* 8 (pi-sum 1 100)) ERROR: unbound variable: pi-term ; in expression: (... pi-term a pi-next b) ; in scope: ; (a b) > (define (pi-term a) (/ 1.0 (* a (+ a 2)))) # > (define (pi-next a) (+ a 4)) # > (* 8 (pi-sum 1 100)) 3.12159465259101 > (* 8 (pi-sum 1 1000)) 3.13959265558978 > (define pi-term) ERROR: define: missing or extra expression (see errobj) > (set! pi-term (lambda (a) (/ 1.0 (* a (+ a 2))))) # > (define (sum-integers a b) (sum (lambda (a) a) a (lambda (a) (+ a 1)) b)) # > (sum-integers 1 10) 55 > ( (lambda (a) (+ a 1)) 4) 5 > (+ 4 1) 5 > (exit) Process scheme finished