Stoffel

Oplossing taak 3

Jan 16th, 2013
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 1.18 KB | None | 0 0
  1.  
  2. (define (make-circular lst)
  3.   (let walk
  4.     ((view lst))
  5.     (cond
  6.       ((null? (cdr view))
  7.        (set-cdr! view lst)
  8.        lst)
  9.       (else
  10.        (walk (cdr view))))))
  11. (define slinger '(ster kerstman ster kerstman ster kerstman ster))
  12. (define slinger-circ (make-circular slinger))
  13.  
  14. (define (opbergen slinger)
  15.   (define doos (cons '() '()))
  16.   (let walk
  17.     ((view slinger)
  18.      (lastkerstman '())
  19.      (lastster '()))
  20.     (define rest (cdr view))
  21.     (if (and (eq? view slinger)
  22.              (or (not (null? (car doos))) (not (null? (cdr doos)))))
  23.         doos
  24.         (begin (set-cdr! view '())
  25.                (cond
  26.                  ((eq?
  27.                  ((eq? 'kerstman (car view))
  28.                   (if (null? (car doos))
  29.                       (set-car! doos view)
  30.                       (set-cdr! lastkerstman view))
  31.                   (walk rest view lastster))
  32.                  ((eq? 'ster (car view))
  33.                   (if (null? (cdr doos))
  34.                       (set-cdr! doos view)
  35.                       (set-cdr! lastster view))
  36.                   (walk rest lastkerstman view)))))))
  37.    
  38.     ;kijk eens naar de oefeningen van eline én matthias
  39.     slinger-circ
  40.     (opbergen slinger-circ)
Advertisement
Add Comment
Please, Sign In to add comment