X-Git-Url: https://git.rkrishnan.org/?p=sicp.git;a=blobdiff_plain;f=src%2Fsicp%2Fex4_41.rkt;fp=src%2Fsicp%2Fex4_41.rkt;h=ba4b97b7a4f8f79ee7bc5f91f271876bf1f1adf5;hp=0000000000000000000000000000000000000000;hb=28e6afb9776cf53cf87d1e8e98e640f4bbd2d7d3;hpb=50cef372de91c41185de4fac8a1fc456c978b28a diff --git a/src/sicp/ex4_41.rkt b/src/sicp/ex4_41.rkt new file mode 100644 index 0000000..ba4b97b --- /dev/null +++ b/src/sicp/ex4_41.rkt @@ -0,0 +1,24 @@ +#lang racket +(require "distinct.rkt") + +(define (multiple-dwelling) + (for/list ([baker '(1 2 3 4 5)] + #:unless (= baker 5) + [cooper '(1 2 3 4 5)] + #:unless (= cooper 1) + [fletcher '(1 2 3 4 5)] + #:unless (or (= fletcher 1) + (= fletcher 5)) + [miller '(3 4 5)] + #:when (> miller cooper) + [smith '(1 2 3 4 5)] + #:when (and (not (= (abs (- smith fletcher)) 1)) + (not (= (abs (- fletcher cooper)) 1)) + (distinct? (list baker cooper fletcher miller smith)))) + (list (list 'baker baker) + (list 'cooper cooper) + (list 'fletcher fletcher) + (list 'miller miller) + (list 'smith smith)))) + +(multiple-dwelling) \ No newline at end of file