(define numeric-tester
  ; TYPE: (-> (number) void)
  (lambda (n)
    ; EFFECT: print some facts about n
    (begin
      (writeln "(real? " n ") ==> " (real? n))
      (writeln "(rational? " n ") ==> " (rational? n))
      (writeln "(integer? " n ") ==> " (integer? n))
	)))

(define conversion-tester
  ; TYPE: (-> (number) void)
  (lambda (n)
    ; EFFECT: print some facts about n
    (begin
      (writeln "(floor " n ") ==> " (floor n))
      (writeln "(ceiling " n ") ==> " (ceiling n))
      (writeln "(round " n ") ==> " (round n))
      (writeln "(truncate " n ") ==> " (truncate n))
	)))

(define exactness-tester
  ; TYPE: (-> (number) void)
  (lambda (n)
    ; EFFECT: print some facts about
    ; the exactness of n
    (begin
      (writeln "(exact? " n ") ==> " (exact? n))
      (writeln "(inexact? " n ") ==> " (inexact? n))
	)))
