Prev: Exercise: Print sum of numbers

Solution: Print sum of numbers

Note! This site is about Perl 6.
If you are looking for a solution for Perl 5, please check out the Perl 5 tutorial.


#!/usr/bin/env perl6
use v6;

my $filename = 'examples/numbers.txt';

my $total;
my $count;
my $min;
my $max;

if (my $fh = open $filename, :r) {
    for $fh.lines -> $line {
        if (not $count) {
            $min = $max = $line;
        $total += $line;
        if ($min > $line) {
            $min = $line;
        if ($max < $line) {
            $max = $line;
    my $average = $total / $count;
    say "Total: $total, Count: $count Average: $average Min: $min Max: $max";
} 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?

The Perl 6 Tricks and Treats newsletter has been around for a while. If you are interested to get special notification when there is new content on this site, it is the best way to keep track:
Full name:
This is a newsletter temporarily running on my personal site ( using Mailman, till I implement an alternative system in Perl 6.
Gabor Szabo
Written by Gabor Szabo

Published on 2012-01-01

Prev: Exercise: Print sum of numbers


In the comments, please wrap your code snippets within <pre> </pre> tags and use spaces for indentation.
comments powered by Disqus
Suggest a change
Elapsed time: 3.721926

Perl 6 Tricks and Treats newsletter

Register to the free newsletter now, and get updates and news.