From bd5f50be83a10363fdfd4f73a377325cf48b5903 Mon Sep 17 00:00:00 2001 From: Mike Vink Date: Tue, 7 Mar 2023 15:18:30 +0100 Subject: fixup --- coding-exercises/2/12.rkt | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 coding-exercises/2/12.rkt (limited to 'coding-exercises/2/12.rkt') diff --git a/coding-exercises/2/12.rkt b/coding-exercises/2/12.rkt new file mode 100644 index 0000000..c977436 --- /dev/null +++ b/coding-exercises/2/12.rkt @@ -0,0 +1,29 @@ +#lang racket +(require "../../shared/intervals.rkt") + +(define (make-center-width c w) + (make-interval (- c w) (+ c w))) + +(define (center i) + (/ (+ (lower-bound i) (upper-bound i)) 2)) + +(define (make-center-percent c p) + (let ((toler (* c (/ p 100.0)))) + ((lambda (a b) + (if (> a b) + (make-interval b a) + (make-interval a b))) + (- c toler) + (+ c toler)))) + +(define (percent i) + (abs (* 100 (/ (width i) (center i))))) + +(define (print) + (define t (make-center-width 10.0 6.1)) + (define tp (make-center-percent -10.0 50.0)) + (print-interval t) + (print-interval tp) + (println (percent t)) + (println (percent tp))) +(print) -- cgit v1.2.3