fork download
  1. ; recursion
  2.  
  3. (define (factorial n)
  4. (if (zero? n) 1
  5. (* n (factorial (- n 1)))))
  6.  
  7. (display (factorial 7)) (newline)
  8.  
  9. (define (factorial n)
  10. (let fact ((n n) (result 1))
  11. (if (zero? n) result
  12. (fact (- n 1) (* n result)))))
  13.  
  14. (display (factorial 7)) (newline)
  15.  
  16. (define (fibonacci n)
  17. (if (< n 2) 1
  18. (+ (fibonacci (- n 1))
  19. (fibonacci (- n 2)))))
  20.  
  21. (display (fibonacci 7)) (newline)
  22.  
  23. (define (fibonacci n)
  24. (let fib ((k 1) (fk 1) (fk-1 1))
  25. (if (= k n) fk
  26. (fib (+ k 1) (+ fk fk-1) fk))))
  27.  
  28. (display (fibonacci 7)) (newline)
Success #stdin #stdout 0.01s 50288KB
stdin
Standard input is empty
stdout
5040
5040
21
21