Advertisement
Jobjob

Programmation déclarative - Q4B - 08/2011

Jan 6th, 2015
242
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 0.94 KB | None | 0 0
  1. (define (make-roue n)
  2.   (letrec
  3.       ((last (list n))
  4.        (create-list (lambda (m)
  5.                       (if (= m n)
  6.                           last
  7.                           (cons m (create-list (+ m 1)))
  8.                           )
  9.                       )
  10.                     )
  11.        (create-circ (lambda (m)
  12.                       (let
  13.                           ((ring (create-list 1)))
  14.                         (begin
  15.                           (set-cdr! last ring)
  16.                           ring
  17.                           )
  18.                         )
  19.                       )
  20.                     )
  21.        (create-center (lambda (ring size)
  22.                         (if (= size 1)
  23.                             ring
  24.                             (cons ring (create-center (cdr ring) (- size 1)))
  25.                             )
  26.                         )
  27.                       )
  28.        )
  29.     (create-center (create-circ n) n)
  30.     )
  31.   )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement