#!/usr/bin/perl use strict ; use warnings ; sub addition { my $sum ; my(@mynumbers) = @_ ; foreach (@mynumbers){ $sum += $_ ; } return $sum } sub avg { my $aver ; my(@mynumbers) = @_ ; $aver = addition(@mynumbers)/($#mynumbers+1) ; print "$aver\n" ; return $aver ; } ## ##THIS NOW WORKS!!! ## my (@numlist, $total, $average, $n, @greater) ; chomp(@numlist = ) ; $total = addition(@numlist) ; $average = avg(@numlist) ; $n = 0 ; foreach (@numlist) { if ($_ > $average) { $greater[$n] = $_ ; # push @greater,$_ ; $n++ ; } } if ( $n > 0 ) { print "Following numbers are greater than the average: " ; print "@greater. Array size is $#greater\n" #IS THERE A WAY I CAN USE "$#greater+1" IN SOME WAY HERE? } else { print "All your numbers are less than or equal to the average\n" ; }