hi friends , here a perl script written by me to merge link files

my input(link) is as following

link1 myco1 16 13013 color=chr1

link1 myco2 7419028 7432025 color=chr1

link2 myco1 13016 31245 color=chr1

link2 myco2 7432026 7450255 color=chr1

link3 myco1 31569 50386 color=chr1

link3 myco2 7450876 7469693 color=chr1

link4 myco1 53241 82019 color=chr1

link4 myco2 7472518 7501295 color=chr1

link5 myco1 82667 85039 color=chr1

link5 myco2 7511397 7513769 color=chr1

link6 myco1 85052 162535 color=chr1

link6 myco2 7513770 7591243 color=chr1

link7 myco1 3519888 3527802 color=chr10

link7 myco2 6192981 6200895 color=chr10

link8 myco1 3531711 3535088 color=chr10

link8 myco2 6200982 6204356 color=chr10

link9 myco1 3537764 3568351 color=chr10

link9 myco2 6204393 6234981 color=chr10

link10 myco1 3585050 3670398 color=chr10

link10 myco2 6236328 6321680 color=chr10

use strict; use warnings; my $JOB = $ARGV[0]; my $threshold = $ARGV[1]; my $fh = "/home/Desktop/merge/$JOB/src/link.txt"; open (INFILE_link,"<$fh") or die $!; my @file_array; while (my $line = <INFILE_link>) { chomp $line; my @line_array = split(/\s+/, $line); push (@file_array, \@line_array); } my $arraySize_link = scalar (@file_array); my $ix=1; my ($i, $a, $b, $c, $d, $x, $w, $y, $z, $ta, $tb, $tc, $td); $a= $b= $c= $d= $x= $w= $y= $z= $ta = $tb =$tc =$td= 0; #open (FILE,'>'."$fh"); for ( $i=0; $i<$arraySize_link; $i+=2) { $ta = $file_array[$i][2]; $tb = $file_array[$i][3]; $tc = $file_array[$i+1][2]; $td = $file_array[$i+1][3]; if ($a=$b=$c=$d=$x=$w=$y=$z = 0) { $a = $x = $ta ; $b = $y = $tb ; $c = $w = $tc ; $d = $z = $td ; last; } if ( ($ta-$a) < $threshold && ($tc-$c) < $threshold) { # copy tabcd to abcd $a = $ta ; $b = $tb ; $c = $tc ; $d = $td ; } else { print "$file_array[$i][0] $file_array[$i][2] $file_array[$i+2] +[3]\n$file_array[$i+1][0] $file_array[$i+1][2] $file_array[$i+3][3]\n +"; $a = $x = $ta ; $b = $y = $tb ; $c = $w = $tc ; $d = $z = $td ; } } # end of for loop if ($a=$b=$c=$d=$x=$w=$y=$z != 0) { print "$file_array[$i][0] $file_array[$i][2] $file_array[$i][3 +]\n$file_array[$i+1][0] $file_array[$i+1][2] $file_array[$i+1][3]\n"; }

My out put

link1 16 31245

link1 7419028 7450255

link2 13016 50386

link2 7432026 7469693

link3 31569 82019

link3 7450876 7501295

link4 53241 85039

link4 7472518 7513769

link5 82667 162535

link5 7511397 7591243

link6 85052 3527802

link6 7513770 6200895

link7 3519888 3535088

link7 6192981 6204356

link8 3531711 3568351

link8 6200982 6234981

link9 3537764 3670398

link9 6204393 6321680

link10 3585050

link10 6236328

please help me in fixing the error and in the last two lines the numbers were not getting in the output please help me in fixing the problem and also help me in fixing the code with out warnings

here in the output as perl toolic reply he is right , please somebody suggest me in fixing this problem how can i change the code to fix this problem of for loop


In reply to problem in for loop by MVRS

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.