Mean, median, and mode
Robert Brewer
fumanchu at amor.org
Sun Dec 5 09:23:08 CET 2004
(now that we have a meaningful subject line)
Alfred Canoy wrote:
> >> I'm just new to programming and would like to ask for help..
> >>
> >> Build a module that contains three functions that do the following:
> >>
> >> a.. Compute the average of a list of numbers
> >> b.. Finds the statistical median value of a list of numbers
> >> c.. Finds the mode of a list of numbers
> >>
> >> Can you please give me clue how I should start solving the
> >> following problem
> >> below? Here's the source code that I did so far:
> >>
> >> # compute the average of a list of numbers:
> >> # Keeps asking for numbers until 0 is entered
> >> # Prints the average value
> >>
> >> count = 0
> >> sum = 0
> >> number = 1
> >>
> >> print 'Enter 0 to exit the loop'
> >> while number != 0:
> >> number = input ('Enter a number: ')
> >> count = count + 1
> >> sum = sum + number
> >> count = count -1
> >> print ' The average is:', sum/count
For the mode, you might build a dictionary:
freq = {}
while number != 0:
number = input ('Enter a number: ')
count = count + 1
sum = sum + number
try:
freq[number] += 1
except KeyError:
freq[number] = 1
...then you can check for the largest value in that dictionary:
max = 0
mode = None
for k, v in freq.iteritems():
if v > max:
max = v
mode = k
I leave the rest in your capable hands... ;) Including the case where
two numbers occur in equal frequencies. ;;)
Robert Brewer
MIS
Amor Ministries
fumanchu at amor.org
More information about the Python-list
mailing list