Pcs2d

Explicacion recursividad - Monitor miguel

Mar 23rd, 2013
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 0.54 KB | None | 0 0
  1. (define(++ a)(+ a 1))
  2. (define(-- a)(- a 1))
  3.  
  4. (define(+ a b)
  5.   (cond[(= b 0) a]
  6.        [else(+(++ a)(-- b))]))
  7.  
  8. (define(- a b)
  9.   (cond[(= b 0) a]
  10.        [else(-(-- a)(-- b))]))
  11.  
  12. (define(* a b)(mul a b 0))
  13.  
  14. (define(mul a b c)
  15.   (cond[(= b 0) c]
  16.        [else(mul a(-- b)(+ c a))]))
  17.  
  18. (define(/ a b)(div a b 0))
  19.  
  20. (define(div a b c)
  21.   (cond[(= b 0) 'ZeroDivision]
  22.        [(< a b) c]
  23.        [else(div (- a b)b(++ c))]))
  24.  
  25. (define(% a b)
  26.   (cond[(= b 0) 'ZeroDivision]
  27.        [(< a b) a]
  28.        [else(%(- a b)b)]))
  29.  
  30. (define(^ a b)...)
Advertisement
Add Comment
Please, Sign In to add comment