1. #!r6rs
  2. (import (rnrs base (6)) (rnrs io simple))
  3. ;vastleggen waarde van munten
  4. (define a 2)
  5. (define b 1)
  6. (define c 0.50)
  7. (define d 0.20)
  8. (define e 0.10)
  9. (define f 0.05)
  10. (define g 0.02)
  11. (define h 0.01)
  12. (define (bedrag x y) (begin
  13. (display x) ; geef aantal munten weer (numeriek)
  14. (if (> x 1) ; als aantal munten groter is als 1
  15. (display " munten van ") ; dan
  16. (display " munt van ")) ;anders
  17. (display y) ; geef waarde munten weer (numeriek)
  18. (if (integer? y) ;als waarde munt integer is
  19. (display " euro") ;dan
  20. (display " eurocent")))) ;anders
  21.  
  22. (define (geef wisselgeld x y)(define z (- y x)
  23. (if (integer? (/ z a)) ;als bedrag deelbaar is door grootste munt, zonder rest
  24. ((bedrag (z a)) ;geef weer voor groot aantal
  25. ((bedrag (quotient z a) ; anders geef quotient deling weer
  26.  
  27. (set! z (remainder (z a)))
  28. (if (integer? (/ z b)) ;als bedrag deelbaar is door grootste munt, zonder rest
  29. (bedrag (z b)) ;geef weer voor groot aantal
  30. (((bedrag (quotient (z b) ;anders geef quotient deling weer
  31.  
  32. )))))))))))