Averages/Mode: Difference between revisions

Complete task for Racket
(Complete task for Racket)
Line 1,622:
print(statmode(c(1, 3, 6, 6, 6, 6, 7, 7, 12, 12, 17)))
print(statmode(c(1, 1, 2, 4, 4)))</lang>
 
=={{header|Racket}}==
Returns values of list of modes and their frequencies of appearance.
<lang Racket>#lang racket
 
(define (mode seq)
(define frequencies (make-hash))
(for ([s seq])
(hash-update! frequencies
s
(lambda (freq) (add1 freq))
0))
(for/fold ([ms null]
[freq 0])
([(k v) (in-hash frequencies)])
(cond [(> v freq)
(values (list k) v)]
[(= v freq)
(values (cons k ms) freq)]
[else
(values ms freq)])))</lang>
 
=={{header|REXX}}==
Anonymous user