fork download
  1. ;!/usr/bin/racket
  2. ;#lang racket
  3.  
  4. (define (cont-frac n d k)
  5. (define (frac i)
  6. (if (< i k)
  7. (/ (n i)
  8. (+ (d i) (frac (+ i 1))))
  9. (/ (n i) (d i))))
  10. (frac 1))
  11.  
  12.  
  13. (define (cont-frac-iter numenator denominator k)
  14. (define (iter i result)
  15. (if (= i 0)
  16. result
  17. (iter (- i 1)
  18. (/ (numerator i)
  19. (+ (denominator i)
  20. result)))))
  21. (iter (- k 1)
  22. (/ (numerator k)
  23. (denominator k))))
  24.  
  25. (display (cont-frac (lambda (i) 1.0)
  26. (lambda (i) 1.0)
  27. 100))
  28. (newline)
  29.  
  30. (display (cont-frac-iter (lambda (i) 1.0)
  31. (lambda (i) 1.0)
  32. 100))
  33. (newline)
  34.  
Success #stdin #stdout 0.04s 8656KB
stdin
Standard input is empty
stdout
0.6180339887498948
0.5251352592402664