Example 3-6. examples/files/statistics.p6
#!/usr/bin/perl6
my $filename = "numbers.txt";
my $total;
my $count;
my $min;
my $max;
if (my $fh = open $filename, :r) {
for $fh.readline -> $line {
if (not $count) {
$min = $max = $line;
}
$total += $line;
if ($min > $line) {
$min = $line;
}
if ($max < $line) {
$max = $line;
}
$count++;
}
my $average = $total / $count;
say "Total: $total, Count: $count Average: $average Min: $min Max: $max\n";
} else {
say "Could not open '$filename'";
}
# There is a minor issue in this solution, what if there are no values at all in the file?
| Prev | Home (Copyright Gabor Szabo) Perl Training Israel | Next |
| Exercise: Print sum of numbers | Up | undef, defined, not |