exam9.5.2

265阅读 0评论2011-11-18 maunix
分类:LINUX

  1. ;; mht created on Nov 15, 2011

  2. ;; data definition:
  3. ;; A list-of-symbols is either
  4. ;; 1. the empty list, empty, or
  5. ;; 2. (cons s los) where s is a symbol and los is a list of symbols.

  6. ;; how-many-symbols : list-of-symbols -> numbers
  7. ;; to compute the number of items in a-list-of-symbols
  8. ;; examples: (how-many-symbols (cons 'a (cons 'b empty))) -> 2
  9. (define (how-many-symbols a-list-of-symbols)
  10.   (cond
  11.     [(empty? a-list-of-symbols) 0]
  12.     [else
  13.      (+
  14.       (how-many-symbols (rest a-list-of-symbols))
  15.       1)]))

  16. ;; test
  17. (= (how-many-symbols (cons 'a (cons 'b empty)))
  18.    2)
  19. (= (how-many-symbols empty)
  20.    0)
上一篇:exam9.5.1
下一篇:exam9.5.3