Third and fourth task: you wrote:
That's 4 times the (nearly) same statement. And if it were not 4 numbers, but 10 - what then? And earlier, you saw that you can't writeif ($numbers[0] > 50) { push (@array,$numbers[0]) } if ($numbers[1] > 50) { push (@array,$numbers[1]) } if ($numbers[2] > 50) { push (@array,$numbers[2]) } if ($numbers[3] > 50) { push (@array,$numbers[3]) }
This is the stage for the other type of "for": either$sum += 2; push(@array,2); $sum += 4; push(@array,4); $sum += 6; push(@array,6);
or - for learning purposes more verbose:for (@numbers) { push @array, $_ if $_ > 50; }
Of course, this is possible with a C-style for, too, but this one is one of Perl's strengths.for my $current (@numbers) { if ($current > 50) { push @array, $current; } }
The last task is made for Perl-style for, too.
In reply to Re: New Perl user - help with my homework
by soonix
in thread New Perl user - help with my homework
by Eardrum
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |