|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Rinat H. Sadretdinow 2:5020/400 29 Mar 2003 03:16:24 To : Alexey Mahotkin Subject : Re: Итерация более чем одного HASH -------------------------------------------------------------------------------- "Alexey Mahotkin" <alexm@hsys.msk.ru> wrote in message news:87smt7qkxr.fsf@hsys.msk.ru... > Hаписать явный цикл. То есть делать что-то типа такого вот ужасного ужаса: === cut === my %hash0 = ( hash0key0 => 0, hash0key1 => 1, hash0key2 => 2 ); my %hash1 = ( hash1key0 => 0, hash1key1 => 1, hash1key2 => 2, hash1key3 => 3 ); my %hash2 = ( hash2key0 => 0, hash2key1 => 1, hash2key2 => 2, hash2key3 => 3, hash2key4 => 4 ); my $len0 = (scalar keys %hash0) * 2; my $len1 = (scalar keys %hash1) * 2; my $len2 = (scalar keys %hash2) * 2; my $max = ($len0 > $len1) ? $len0 : $len1; if ($max < $len2) { $max = $len2; } for (my $i = 0; $i < $max; $i += 2) { my $key; if ($i < $len0) { $key = each %hash0; print "value in \%hash0 for key $key is $hash0{$key}\n"; } else { print "\%hash0 exhausted at $i\n"; } if ($i < $len1) { $key = each %hash1; print "value in \%hash1 for key $key is $hash1{$key}\n"; } else { print "\%hash1 exhausted at $i\n"; } if ($i < $len2) { $key = each %hash2; print "value in \%hash2 for key $key is $hash2{$key}\n"; } else { print "\%hash2 exhausted at $i\n"; } } === cut === -- Пока! --- ifmail v.2.15dev5 * Origin: SYS3175 (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/657764cf8bca.html, оценка из 5, голосов 10
|