I try to slice AOA into two subsets, then put them back. The problem is when I put them back, I couldn't do what I like, for example:
Here is Original array
a b 3 4
c d 2 5
e f 13 8
slice into two pieces:
print Dumper of array A a b c d e f
print Dumper of array B
3 4 2 5 13 8 put them back once Here we put two subsets back together a b 3 4 c d 2 5 e f 13 8
So far it ok However, if I do it once more, it looks like this: a b 3 4 a b 3 4 c d 2 5 c d 2 5 e f 13 8 e f 13 8
but I attempt to do is like this: a b a b c d c d e f e f
How can I do it and where I am wrong?
Thanks,
Shiping _______________________________________________________________________________ use strict; use warnings; use Data::Dumper;
my (@a, @b); my @all =(['a', 'b', 3, 4], ['c', 'd', 2, 5], ['e', 'f', 13, 8]);
print "Original array\n";
foreach my $i (@all){
print join " ",@{$i},"\n";
#cut array in columns;
my @tmp1 = @{$i}[0,1];
push @a, [EMAIL PROTECTED];
my @tmp2 = @{$i}[2,3];
push @b, [EMAIL PROTECTED];
}
print "\n";print "print Dumper of array A\n";
foreach my $k (@a){
print join " ",@{$k},"\n";
}
print "\n";
# print Dumper @a;print "print Dumper of array B\n";
print "\n";
foreach my $k (@b){
print join " ",@{$k},"\n";
}
# print Dumper @b;my @backcolumn1 = @a;
if (scalar @backcolumn1 != scalar @b) {
exit(0);
} else {
for my $i (0 .. $#backcolumn1) {
push @{$backcolumn1[$i]}, @{$b[$i]};
}
}
print "\n";print "Here we put two subset arraies back together\n";
foreach my $k (@backcolumn1){
print join " ",@{$k},"\n";
}
######################################################;
my @backcolumn2 = @a;
if (scalar @backcolumn2 != scalar @a) {
exit(0);
} else {
for my $i (0 .. $#backcolumn2) {
push @{$backcolumn2[$i]}, @{$a[$i]};
}
}
print "\n";
sleep(1);
print "Here again we put another two subset arraies back together\n";
foreach my $k (@backcolumn2){
print join " ",@{$k},"\n";
}
-- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>
