;; Question 4 (define-struct clock (hour min sec)) (define (addHour clk) (make-clock (cond [(> (+ (clock-hour clk) 1) 12) 0] [else (+ (clock-hour clk) 1)] ) 0 (clock-sec clk) ) ) (define (addMin clk) (make-clock (clock-hour clk) (cond [(> (+ (clock-min clk) 1) 59) (addHour clk)] [else (+ (clock-hour clk) 1)] ) 0 ) ) (define (addSec clk) (make-clock (clock-hour clk) (clock-min clk) (cond [(> (+ (clock-sec clk) 1) 59) (addMin clk)] [else (+ (clock-sec clk) 1)] ) ) ) (define (tick clk) (addSec clk) )