Leser: 1
8 Einträge, 1 Seite |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
my @array1 = ("A","A","A","B","C");
my @array2 = ("a","b","c","d","e");
#nun soll verglichen werden, wenn Array 1 gleich ist also hier die #ganzen A's dann soll Array 2 an den stellen zusammengefasst #werden => array1 wird A,B,C und array2 wird 123,1,1 also beide #haben nur noch drei Einträge
#mein Versuch
my $y=0;
my @array2_new;
my @array1_new;
for my $i(0..scalar(@array1)-1){
if ($array1[$i] eq $array1[$i+1]){
$array1_new[$y] = $array1[$i];
if ($array2_new[$y] ne ""){
$array2_new[$y]= $array2_new[$y].$array2[$i].$array2[$i+1];
}
else{ $array2_new[$y]= $array2[$i].$array2[$i+1];}
}
elsif ($array1[$i] ne $array1[$i+1]
&& $array1[$i-1] ne $array1[$i]){
$y++;
$array1_new[$y] = $array1[$i];
$array2_new[$y] = $array2[$i];
}
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my @array1 = ("A","A","A","B","C"); my @array2 = ("a","b","c","d","e"); my %seen; my @tmp; for my $i ( 0.. $#array1 ){ push @tmp, $array1[$i] unless exists $seen{ $array1[$i] }; push @{ $seen{ $array1[$i] } }, $i; } @array1 = @tmp; undef @tmp; for my $j ( 0..$#array1 ){ my $elem = $array1[$j]; $tmp[$j] = join '', @array2[ @{ $seen{$elem} } ]; } @array2 = @tmp; print Dumper \@array1, \@array2;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#!/usr/bin/perl use strict; use warnings; # 0, 1, 2 my @array1 = ("x","y","z"); my @array2 = ("x","y","y"); for(my $i = 0; $i < 3; $i++) { if($array1[$i] ne $array2[$i]) { print "Array1 ist an stelle $i nicht gleich mit Array2\n"; } }
for my $i ( 0..$#array1 ){
for(my $i = 0; $i < 3; $i++) {
8 Einträge, 1 Seite |