Advertisement
Guest User

Untitled

a guest
Jul 10th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 0.95 KB | None | 0 0
  1. ;----------------------------------------------
  2. ;
  3. ; Автор: Валентина Динкова
  4. ; Ф.н.: 71112
  5. ;
  6.  
  7. (define (process! T)
  8.   (define (last x)
  9.     (if (null? (cdr x)) x
  10.         (last (cdr x))))
  11.  
  12.   (define (append! x y)
  13.     (begin (set-cdr! (last x) y)
  14.            x))
  15.  
  16.   (define (sum l)
  17.     (if (null? l) 0
  18.         (+ (car l)(sum (cdr l)))))
  19.  
  20.   (define (sumlists l1 l2)
  21.     (cond ((null? l1) l2)
  22.           ((null? l2) l1)
  23.           (else (append (list (+ (car l1) (car l2))) (sumlists (cdr l1) (cdr l2))))) )
  24.  
  25.   (define (sumcols T)
  26.     (if (null? (cdr T)) (car T)
  27.         (sumlists(sumlists (car T) (cadr T)) (sumcols (cddr T)) )))
  28.  
  29.   (define (process-rows! T)
  30.     (cond ((null? T) T)
  31.           (else (append! (car T) (list(sum (car T)))) (process-rows! (cdr T)))))
  32.  
  33.   (define (process-cols! T)
  34.     (cond ((null? T) T)
  35.           (else (append! T (list(sumcols T))))))
  36.   (process-rows! T)
  37.   (process-cols! T))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement