#!/usr/bin/perl -w

# Uma solucao para o exercicio 4 da Aula 27 de MAC211
# M.S.Reis, 17/6/2010

use strict;
use warnings;

my @nomes = ("Foo", "Bar", "Baz");

my %p1 = ("Foo" => 0, "Bar" => 5, "Baz" => 8.5);
my %p2 = ("Foo" => 3, "Bar" => 7, "Baz" => 9.5);

my @medias = &calcula_medias(\%p1, \%p2, @nomes);

foreach (0..$#nomes){
    printf "%s tirou %2.2f\n", $nomes[$_], $medias[$_];
}

sub calcula_medias{
    my $ref1 = shift @_;
    my $ref2 = shift @_;
    my @nome = @_;
    my @media;
    $media[$_] = ($ref1->{$nome[$_]} + $ref2->{$nome[$_]}) / 2 foreach 0..$#nome;
    @media;   # return @media
}
