in reply to Diagnose code
Only a couple small points. The corrected code follows
The .= operator appends anything on the righthand side to the left.. So you use either x = x . y; or x .= y; but not x .= x . y;
In order for the calculated sum to be available outside of the foreach loop, it must be declared outside of the foreach loop. This also means that it can't be redeclared with "my" inside the foreach loop or in the ensuing print statement.
use strict; use warnings; my $i = 0; my $input = ""; while ($i < 3) { chomp(my $num = <>); $input .= " $num"; $i++; } print "Total input is $input\n"; my @nums = split(' ', $input); my $sum; foreach (@nums) { $sum += $_; } print $sum / @nums . "\n"; exit;
There are many other ways this code can be improved. Hopefully the above points get you going again though.
|
|---|