Averages/Mode: Difference between revisions

Content deleted Content added
Jono (talk | contribs)
→‎{{header|Lasso}}: Adding Lasso Example
Line 1,165:
mode 1 1 1 1 2 2 2 3 3 3 3 4 4 3 2 4 4 4
3 4</lang>
 
 
=={{header|Lasso}}==
<lang Lasso>define getmode(a::array)::array => {
local(mmap = map, maxv = 0, modes = array)
// store counts
with e in #a do => { #mmap->keys >> #e ? #mmap->find(#e) += 1 | #mmap->insert(#e = 1) }
// get max value
with e in #mmap->keys do => { #mmap->find(#e) > #maxv ? #maxv = #mmap->find(#e) }
// get modes with max value
with e in #mmap->keys where #mmap->find(#e) == #maxv do => { #modes->insert(#e) }
return #modes
}
getmode(array(1,3,6,6,6,6,7,7,12,12,17))
getmode(array(1,3,6,3,4,8,9,1,2,3,2,2))</lang>
 
{{out}}
<pre>array(6)
array(2, 3)</pre>
 
=={{header|Lua}}==