Iam new to perl. This is my problem.
I have calculated the distance using the formula

my $distance = sqrt(($x2 - $x1)**2 + ($y2 - $y1)**2 + ($z2 - $z1)**2);
and the value of $distance looks like this:


Now I have to open a file that looks like this:

1 3.90
2 4.90
3 4.91
4 5.12
71 50.23
72 51.00
180 78.00

I have opened this file

open(DIST,"path/DBins.pl") or die "$!";
while(my $lines = <DIST>){
my @point = (split (/\s+/, $lines))[1,2];

I have to compare the value of $distance (shown above)with the above file with the second column and print out the corresponding first column value. the threshold value is 71(1st column). Any value of $distance above 50.00 should stop there and retrieve the first column values of 50.23. The first column is the index value and second column(floating point values) is the energy values.

Till now I have split the line in the file, but i dnt know how to assign values to that array to the two columns . I dont know how to compare the value of $distance to the second column and get the corresponding first column values as output.
Please help.

You have this posted on too many forums for me to want to help you. You should also try and do your own school work.

yes Kevin, I had posted to another forum, as I tried to solve it and i am stuck, i am still learning perl and i was stuck upto splitting the array, not knowing how to assign values to that. I know the algorithm, but i find it very difficult to write the syntax.

This question has already been answered. Start a new discussion instead.