I don't see your sentiment (which I agreed with) reflected in your modifications to the example. To my mind, breaking it into understandable functions would end up more like:
# with this level of modularity almost anything is readable!
sub determine_maximum_fee {
#
# functional description goes here
#
$fee = Roundup( Sum( @_ ) );
$fee < 100 ? $fee : 200; # all 100+ fees become 200
}
sub Roundup {
#
# Increase just barely to avoid any rounding down problem
#
100 * ( ($_[0]/100) + 0.0000001 );
}
sub Sum {
#
# needs no description.
#
my $result=0;
$result += shift() || return $result while (1);
}
__________________________________________________________________________________
^M Free your mind!