in reply to Finding a match between two paired arrays
First, you skip index 0. Second, if anyone modifies $[, your @a-1 won't be the last element. Anyhow, let's take a crack at it:
#!/usr/bin/perl -wl use strict; my @a = qw(1 2 1 1 2 2 1 2); my @b = qw(aa aa ab ac ac ad ac ad); print "first" if find_pair(1,"aa",\@a,\@b); print "not printed" if find_pair(2,"ax",\@a,\@b); print "not printed" if find_pair(4,"ax",\@a,\@b); print "second" if find_pair(2,"ac",\@a,\@b); print "third" if find_pair(2,"ad",\@a,\@b); sub find_pair { my ($first,$second,$array1,$array2) = @_; $first eq $array1->[$_] && $second eq $array2->[$_] && return 1 for +$[..$#$array1 } __END__ first second third
antirice
The first rule of Perl club is - use Perl
The ith rule of Perl club is - follow rule i - 1 for i > 1
|
|---|