#!/usr/bin/perl

# $rozklad = waga_do_rozkladu( \%waga )
#    Konwersja wag do postaci rozkladu prawdopodobienstwa.
sub waga_do_rozkladu {
    my ($wagi) = shift;
    my ($suma_wag, %rozklad) = (0);

    foreach (values %$wagi) { $suma_wag += $_ }

    while ( my ($klucz, $wartosc) = each %$wagi ) {
        $rozklad{$klucz} = $wartosc / $suma_wag;
    }
    return \%rozklad;
}

%wagi_kolorow = ( pomaranczowe => 3,
                  zielone      => 10,
                  rozowe       => 8,
                  brazowe      => 10,
                  biale        => 0,
                  czerwone     => 6,
                  niebieskie   => 11,
                  zolte        => 7,
                  fioletowe    => 5   );

$rozklad_prawd = waga_do_rozkladu( \%wagi_kolorow );

while ( ($klucz, $wartosc) = each %$rozklad_prawd ) {
    print "$klucz = $wartosc\n";
}

