Blame


1 ffd9a51f 2023-08-04 jrmu #!/usr/bin/perl
2 ffd9a51f 2023-08-04 jrmu
3 ffd9a51f 2023-08-04 jrmu #Write a subroutine, named total, which returns the total of a list of numbers. Hint: the subroutine should *not* perform any I/O; it should simply process its parameters and return a value to its caller. Try it out in this sample program, which merely exercises the subroutine to see that it works. The first group of numbers should add up to 25.
4 ffd9a51f 2023-08-04 jrmu
5 ffd9a51f 2023-08-04 jrmu use warnings;
6 ffd9a51f 2023-08-04 jrmu use strict;
7 ffd9a51f 2023-08-04 jrmu use utf8;
8 ffd9a51f 2023-08-04 jrmu
9 ffd9a51f 2023-08-04 jrmu sub total {
10 ffd9a51f 2023-08-04 jrmu my $sum = 0;
11 ffd9a51f 2023-08-04 jrmu foreach (@_) {
12 ffd9a51f 2023-08-04 jrmu $sum += $_;
13 ffd9a51f 2023-08-04 jrmu }
14 ffd9a51f 2023-08-04 jrmu return $sum;
15 ffd9a51f 2023-08-04 jrmu }
16 ffd9a51f 2023-08-04 jrmu
17 ffd9a51f 2023-08-04 jrmu my @fred = qw{ 1 3 5 7 9 };
18 ffd9a51f 2023-08-04 jrmu my $fred_total = total(@fred);
19 ffd9a51f 2023-08-04 jrmu print "The total of \@fred is $fred_total.\n";
20 ffd9a51f 2023-08-04 jrmu print "Enter some numbers on separate lines: ";
21 ffd9a51f 2023-08-04 jrmu my $user_total = total(<STDIN>);
22 ffd9a51f 2023-08-04 jrmu print "The total of those numbers is $user_total.\n";