Advertisement
Guest User

Untitled

a guest
Nov 28th, 2015
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 0.71 KB | None | 0 0
  1. (define (reduce op start-value l)
  2.   (cond ((null? l) start-value)
  3.         (else (op (car l) (reduce op start-value (cdr l))))))
  4.  
  5. (define (all? pred? l)
  6.   (reduce (lambda (x y) (and x y)) #t (map pred? l)))
  7.  
  8. (define (nth index list)
  9.   (cond
  10.     ((= index 0) (car list))
  11.     (else (nth (- index 1) (cdr list)))))
  12.  
  13.  
  14. (define (iter n list result)
  15.     (cond
  16.       ((null? list) result)
  17.       ((= n 0) result)
  18.       (else (iter (- n 1) (cdr list) (cons (car list) result)))))
  19.  
  20. (define (take n l)
  21.   (reverse (iter n l (list))))
  22.  
  23. (define (underD mat)
  24.   (map (lambda (n) (take n (nth n mat))) (range 1 (length mat) 1)))
  25.  
  26. (define (triangular? mat)
  27.   (all? (lambda (row) (all? (lambda (x) (= x 0)) row)) (underD mat)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement