in reply to Re^3: Help with arrays
in thread Help with arrays

#!/usr/bin/perl @nums = (); for(0..$#nums) { $sum += $_; } $size = $#nums; $average = $sum / $size; print "$average";
This fix the illegal division of 0 and now it gives me the result of 0

Replies are listed 'Best First'.
Re^5: Help with arrays
by 2teez (Vicar) on Sep 22, 2012 at 05:52 UTC

    Anonymous Monk:
    An exercise of an array of "unknown length" would be to populate an array from a file of unknown lines (thus number of array elements) with each number listed on a line by itself.

    In the light of the above statement, let assume, your file with unknown length is given as below __DATA__, consider the codes below:

    use warnings; use strict; my $sum = 0; my @nums; # same as my @nums = (); while (<DATA>) { chomp; push @nums, $_; } $sum += $_ for @nums; my $size = @nums; my $average = $sum / $size; print $average, $/; __DATA__ 1 2 3 4 5 6

    NOTE: that @nums = () is assigning an empty list to the variable array @nums, so the array is empty. So, $size will be 0.

    You might what to check the following Up:
    push, pop, shift, unshift

    If you tell me, I'll forget.
    If you show me, I'll remember.
    if you involve me, I'll understand.
    --- Author unknown to me