> Is there any reason why this doesn't print the @missing? > Ive also tried unless ($myhash{$elem} == 1) { push(@missing, $frame) } > Any insight into what I'm doing wrong would be greatly appreciated.
> @missing = ""; Wrong assignment, should be: my @missing = (); my %myhash = (); > @framelist= (1, 2, 3, 6, 10); > $startFrame= "001"; > $endFrame = "0010"; > > @fullList = (int $startFrame .. int $endFrame); > print "FULL RANGE @fullList\n"; > foreach $item(@fullList) { > $myhash{$item} = 1; > } > > foreach $elem(@framelist) { do you want $elem(@fullList) or @framelist ?? > print "$elem\n"; > if ($myhash{$elem} == 1) { > print "$elem found!\n"; > }else{ > push(@missing, $elem); > } > } > > print "Missing Frames @missing"; ##Doesn't print this! > As your output tells, everything are found !! So, of cause no missing...... Also, you assign all the values for any keys in %myhash are 1..... So you won't get any missing result even you assing @framelist = (1..10) HTH > -------------------------------------------------------------- > OUTPUT : > > FULL RANGE 1 2 3 4 5 6 7 8 9 10 > 1 > 1 found! > 2 > 2 found! > 3 > 3 found! > 6 > 6 found! > 10 > 10 found! > Missing Frames -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]