PasteRack.org
Paste # 95273
2016-07-15 12:53:26

Forked from paste # 85959.

Fork as a new paste.

Paste viewed 323 times.


Embed:

  1. #lang racket
  2.  
  3. (define min -5)
  4. (define max 7)
  5.  
  6. (define (generate)
  7.   (for/list ((i (in-range 3)))
  8.             (for/list ((i (in-range 6)))
  9.                       (+ (random (+ 1 (- max min))) min))))
  10.  
  11. (define (root-mean-square x)
  12.   (sqrt (/ (foldl + 0 (map sqr x)) (length x))))
  13.  
  14. (define r (generate))
  15.  
  16. (displayln "Matrix")
  17. (for-each displayln r)
  18.  
  19. (displayln "List")
  20. (define s (flatten r))
  21. (displayln s)
  22.  
  23. (displayln "Root mean square of ...")
  24. (displayln (root-mean-square (filter (lambda (x) (> x 0))
  25.                                      (drop s (/ (length s) 2)))))

=>

Matrix

(3 -2 -5 -2 4 -4)

(3 -5 0 0 0 5)

(4 7 1 -5 1 -1)

List

(3 -2 -5 -2 4 -4 3 -5 0 0 0 5 4 7 1 -5 1 -1)

Root mean square of ...

4.2895221179054435