Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 1.05 KB | None | 0 0
  1. ; Call expressions
  2.  
  3. (+ 1 2 3 4)
  4. (+)
  5. (*)
  6. (- 12)
  7. (- 20 1 2 3 4 5)
  8. (* 2 (+ 1 (* 2 2 2 2 3 3 7)))
  9. (number? 12)
  10. (integer? 3.3)
  11. (zero? 2)
  12.  
  13. ; Definitions
  14.  
  15. (define (square x) (* x x))
  16.  
  17. (define (average x y) (/ (+ x y) 2))
  18.  
  19. (define (abs x)
  20.   (if (< x 0)
  21.       (- x)
  22.       x))
  23.  
  24. (define (sqrt x)
  25.   (define (improve guess)
  26.     (average guess (/ x guess)))
  27.   (define (sqrt-iter guess)
  28.     (if (= (square guess) x)
  29.         guess
  30.         (sqrt-iter (improve guess))))
  31.   (sqrt-iter 1))
  32.  
  33. ; List demos
  34.  
  35. (cons 1 2)
  36. (cons 1 (cons 2 nil))
  37. (cons 1 (cons 2 (cons 3 4)))
  38. (cons (cons 1 2) 2)
  39. (cons (cons 1 2) nil)
  40. (cons (cons 1 (cons 2 nil)) nil)
  41. (cons (cons 1 2) (cons 3 nil))
  42.  
  43. (pair? (cons 1 2))
  44. (pair? (cons 1 (cons 2 nil)))
  45. (pair? nil)
  46. (null? nil)
  47. (null? (cons 1 2))
  48.  
  49. (list 1 2)
  50. (list 1 2 3 4)
  51. (cdr (list 1 2 3 4))
  52.  
  53. (define x (cons 1 2))
  54. (list (car x) (cdr x))
  55. (cons (car x) (cons (cdr x) nil))
  56.  
  57. (define (length items)
  58.   (if (null? items)
  59.       0
  60.       (+ 1 (length (cdr items)))))
  61.  
  62. (define squares (list 1 4 9 16 25))
  63.  
  64. (length squares)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement