summaryrefslogtreecommitdiff
path: root/avg
blob: 5d32bb8de62d8c41760cdf7ca889378de6627a57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env ruby

require 'optimist'

conf = Optimist::options do
  banner "avg < <one number per line>"
  opt :round, "Number of digits after decimal point.", :type => :int, :default => -1
end

sum = 0.0
i = 0
while line = STDIN.gets
  sum += line.to_f
  i +=1
end

avg = sum/i.to_f

if conf[:round] >= 0
  puts avg.round conf[:round]
else
  puts avg
end