; ?5 I# f/ O: [# D3 `5 f K# X D$ _; ]" M! b1 I+ Q$ X1 s
1 \! @) E. p$ n2 M: G% _: s5 k% O下面我们来算算这个狭长三角形的面积。 7 D A/ Q3 Z( W3 s; {: e我们先求狭长三角形的三边长,然后用海伦公式求面积。* g* S! t2 P1 p$ L$ S
(define (triangle-area a b c) # |: s3 x! M) J3 d8 v: V7 t(let ((s (/ (+ a b c) 2)))5 ~! b. h! d- b6 H; H! U2 b6 I N
(sqrt (* s (- s a) (- s b) (- s c))))) , B/ W5 u# o) H/ k
$ C& _- s9 ~5 z8 D(define (hypo a b); A% y6 e4 L% Z: y1 m+ m8 P
(sqrt (+ (* a a) (* b b)))) # I; @0 p, k$ U) e
( J# A9 ^( A5 l. T5 Y2 ?0 a/ b# E(triangle-area (hypo 8 3) (hypo 5 2) (hypo 13 5)) : u- j/ B. ]: v& w+ Q5 _& a
' m* s# s1 S& L* `3 T# E( e
;0.4999999999994106 实际上刚好等于0.5。我还在想为什么…… ' M6 B' U) W% a 8 A) ]6 q6 ]! o7 ~6 k) ?2 _所以上下两个图形的面积差为2 * 0.5 = 1,这就解释了那个空格。 $ r9 k8 b* v* g' e: T! k( D
' y* m, T5 _* E: O, ]