Wyrażenie matematyczne w postaci skryptu Perl (2)

Skrypt oblicza wyrażenie [], zmienne a, b, c i y są kolejnymi elementami tablicy i a rożne od 1/2.

#!D:\Perl\bin\perl.exe -w

%array = (a => 9, b => 3, c => 7, y => 0);
print "Zmienne:\n";
foreach $p(%array){
   if($i%2==0){print "$p=";}
   else{print "$p, ";}
   $i++;
   }

if($array{a} != 0.5 && $array{a} >= 0){
    if($array{b} > 0){
        if($array{c} >= 0){
            $array{y} = ($array{c}*(($array{a}+1)**2))/((2*$array{a}) - 1)**($array{b}-1);
            print "\n\nWynik obliczen:\ny = $array{y}\n";
        }else {print "c musi być >= 0\n";}
    }else {print "b musi być > 0\n";}
}else {print "a musi być >= 0, ale nie może być równe 0.5\n";}
Dział: