Averages/Arithmetic mean: Difference between revisions

Line 311:
> (mean (list 3 1 4 1 5 9))
3 5/6
 
=={{header|UnixPipes}}==
term() {
b=$1;res=$2
echo "scale=5;$res+$b" | bc
}
 
sum() {
(read B; res=$1;
test -n "$B" && (term $B $res) || (term 0 $res))
}
 
fold() {
func=$1
(while read a ; do
fold $func | $func $a
done)
}
 
mean() {
tee >(wc -l > count) | fold sum | xargs echo "scale=5;(1/" $(cat count) ") * " | bc
}
 
 
(echo 3; echo 1; echo 4) | mean
418

edits