open(IN, "/path/outModified.pl") or die "$!"; while (my $line = ) { chomp($line); my @array = (split (/\s+/, $line))[6, 7, 8]; # print "@array\n"; push @points, [ @array ]; } close(IN); print '@points : ', Dumper \@points; open my $out_file, '>', "/path/dist_modified.pl" or die "cannot open: $!\n"; for my $i1 ( 0 .. $#points -1 ){ my ( $x1, $y1, $z1 ) = @{ $points[$i1] }; for my $i2 ( 1 .. $#points){ my ( $x2, $y2, $z2 ) = @{ $points[$i2] }; my [COLOR="Red"]$dist [/COLOR]= sqrt(($x2 - $x1)**2 + ($y2 - $y1)**2 + ($z2 - $z1)**2); print $out_file "153L.pdb: the distance between CA $i1 and CA $i2 = $dist\n"; } } close $out_file or die "cannot close file: $!\n"; #### col1 col2 1 2.69 2 2.97032 3 3.25064 4 3.53096 5 3.81128 6 4.0916 7 4.37192 8 ....... so on..... . . 170 50.98 171 51.086....so on