Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:
i wrote a script which measure the hydrogen bond in RNA molecule, but i have this error, which i cannot handle. please help me. use of uninitialized value line 27.
#!/usr/bin/perl use warnings; use strict; my @structure; my @bases; my $basestring = <STDIN>; chomp($basestring); my $parenstring = <STDIN>; chomp($parenstring); print evalRnaStructure($basestring,$parenstring)," hydrogen bonds in t +his structure.\n"; sub evalRnaStructure { my ($basestring,$structurestring) = @_; @bases = split(//,"5.$basestring.3"); @structure = split(//,"($structurestring)"); return evalRna(0,$#structure); } sub evalRna { my ($l,$r) = @_; my %bonds= (GU=>1,UG=>1,AU=>2,UA=>2,CG=>3,GC=>3); my $numBonds = $bonds{$bases[$l].$bases[$r]}; my $level = 0; my $ii = $l; for (my $i=$l+1; $i<=$r; $i++) { $level-- if ($structure[$i] eq ")"); if ($level==0) { $numBonds+= evalRna($ii,$i) if ($structure[$i] eq ")"); $ii = $i; } $level++ if ($structure[$i] eq "("); } return $numBonds; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: recursive algorithm
by GrandFather (Saint) on Sep 06, 2012 at 00:03 UTC | |
|
Re: recursive algorithm
by toolic (Bishop) on Sep 05, 2012 at 21:16 UTC | |
|
Re: recursive algorithm
by grizzley (Chaplain) on Sep 06, 2012 at 10:38 UTC | |
by Anonymous Monk on Sep 06, 2012 at 12:41 UTC | |
|
How To Debug
by DrHyde (Prior) on Sep 06, 2012 at 10:23 UTC | |
|
Re: recursive algorithm
by Anonymous Monk on Sep 05, 2012 at 21:22 UTC | |
by remiah (Hermit) on Sep 06, 2012 at 07:43 UTC |