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