(define (mult-table n m) (reverse (mult-tabler n m))) (define (mult-tabler n m) (cond [(or (zero? n) (zero? m)) empty] [else (cons (multiplylist n (listup m m)) (mult-tabler (sub1 n) m))])) (define (listup r s) (cond [(zero? s) empty] [else (cons (add1 (- r s)) (listup r (sub1 s)))])) (define (multiplylist x lst) (cond [(empty? lst) empty] [else (cons (* x (first lst)) (multiplylist x (rest lst)))]))