que toda vez que você passar termofilter('arquivo', -30, -20) todo o arquivo estaria sendo lido (o q é obvio)<div><br></div><div>que por exemplo, poderia ser</div><div><br></div><div>$dados = h_energy('arquivo.txt');</div>

<div><br></div><div>termofilter($dados, -30, -20);</div><div><br></div><div>nesse caso, o codigo ficaria assim:<br><a href="http://pastebin.com/ZyWPxq9A">http://pastebin.com/ZyWPxq9A</a></div><div><br></div><div><br><br>
<div class="gmail_quote">
2012/11/30 Aureliano Guedes <span dir="ltr"><<a href="mailto:guedes_1000@hotmail.com" target="_blank">guedes_1000@hotmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div><div dir="ltr">
Entendi, eu so não entendi a parte de "uma coisa: eu vi que sua funcao lá de intervalo está criando tudo de 
novo, dependendo do caso, você pode fazer a leitura apenas uma vez,".<br><br>O que você quis dizer com isso?<br><br><div><div></div><hr>From: <a href="mailto:renato.cron@gmail.com" target="_blank">renato.cron@gmail.com</a><br>

Date: Fri, 30 Nov 2012 10:44:24 -0200<div><div class="h5"><br>To: <a href="mailto:rio-pm@pm.org" target="_blank">rio-pm@pm.org</a><br>Subject: Re: [Rio-pm] Chaves de hash<br><br>faça o push (só que sem a funcao),<div><br>

</div><div>outra forma, porque não usar uma array ? e ai você coloca assim:</div><div><br></div><div><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif"> my @hmfe;</span></div>

<div><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif"><br></span></div><div><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif">  while (..){ ...</span></div>

<div><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif">      push @hmfe, {valor => </span><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif">$mirna, registro => $</span><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif">record};</span></div>



<div><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif">      ...<br>  }</span></div><div><div><br></div><div><br></div><div>e ai você faria o seu loop pra encontrar o valor mudando apenas</div>



<div><br></div><div>$keys por $linha->{valor}</div><div><br></div><div>foreach my $linha (@hmfe){</div><div>   ... if ..</div><div>}</div><div><br></div><div>-----</div><div>uma coisa: eu vi que sua funcao lá de intervalo está criando tudo de novo, dependendo do caso, você pode fazer a leitura apenas uma vez, retornar o @hmfe (em referencia {  return \@hmfe }, para nao duplicar na memoria) e depois usar ele na funcao que recebe o intervalo e retorna os registros.</div>



<div><br><div>2012/11/30 Aureliano Guedes <span dir="ltr"><<a href="mailto:guedes_1000@hotmail.com" target="_blank">guedes_1000@hotmail.com</a>></span><br><blockquote style="border-left:1px #ccc solid;padding-left:1ex">






<div><div dir="ltr">
Biólogo não, biomedico, acredite essa diferença fere nossos sentimentos. hahaha<div><br><br>> Hashs não têm mais de uma chave igual. Ele vai mudar o valor <br>> relacionado à chave e não criar outra chave com o mesmo valor.<br>



<br></div>Agora sim, isso é um problemão. Estarei perdendo dados assim.<br><br>Como poderia reverter isso então??<br><br>Faria a chave ser valor e o valor ser chave?? Quais minhas opções??<br><br>sub h_energy{         <br>



    my $self = shift;
<br>    my $data = $self->h_data || die "cannot find data";
<br>    my $file = file("$data")->openr();
<br><div>    my %hmfe = ();         <br>    my $mirna;
<br>    my $record;
<br>     <br>    while (my $linha = <$file>) {
<br>        if ( $linha =~ m{target:.*} ) {
<br>            $record = $linha . $record if ($record);
<br></div><div>            $hmfe{$mirna} = $record if ($mirna);
<br></div><div>            $mirna = $+{mirna};
<br>            $record = q() if ($record);
<br>        }
<br></div>        elsif ($linha =~ m{mfe:\s+(\S+)\s+kcal/mol}){
<br><div>            $mirna = $1;
<br>            $record .= $linha;
<br>        }
<br>         else {
<br>            $record .= $linha;
<br>         }
<br>    }
<br>    return %hmfe;
<br>}<br><br></div><div><div></div>> Date: Fri, 30 Nov 2012 10:30:17 -0200<br>> From: <a href="mailto:thiagoglauco@ticursos.net" target="_blank">thiagoglauco@ticursos.net</a><div><div><br>> To: <a href="mailto:rio-pm@pm.org" target="_blank">rio-pm@pm.org</a><br>



> Subject: Re: [Rio-pm] Chaves de hash<br>> <br>> Hashs não têm mais de uma chave igual. Ele vai mudar o valor <br>> relacionado à chave e não criar outra chave com o mesmo valor.<br>> <br>> Em 2012-11-30 00:24, Aureliano Guedes escreveu:<br>



> > Bruno, no meu if funcionou tanto com && quanto com and. O meu erro<br>> > mesmo foi que a regex pegava um espasso.<br>> ><br>> > Bem a minha duvida ficou em "porque seria problematico colocar reais<br>



> > em chaves de hash no meu caso?"<br>> ><br>> > Se eu fosse pesquisar um valor especifico e tivesse duas ou mais<br>> > chaves com o mesmo valor real seria problema<br>> > mas no meu caso umporta que o valor esteja em um determinado<br>



> > intervalo, podem ter 20 chaves iguais, estando no intervalo<br>> > eu quero os 20 valores. 49??<br>> ><br>> > -------------------------<br>> > From: <a href="mailto:leonardo.balter@gmail.com" target="_blank">leonardo.balter@gmail.com</a><br>



> > Date: Fri, 30 Nov 2012 00:15:50 -0200<br>> > To: <a href="mailto:rio-pm@pm.org" target="_blank">rio-pm@pm.org</a><br>> > Subject: Re: [Rio-pm] Chaves de hash<br>> ><br>> > Quero participar dessa discussao antes do 50.<br>



> ><br>> > Por que tanta peculiariade na dicotomia de popular?<br>> ><br>> > Na buzilis da cizania ja nao era mais sobre Perl ou foi impressao <br>> > minha?<br>> ><br>> > Leo Balter - via mobile<br>



> ><br>> > Em 30/11/2012, às 00:02, Marcio Ferreira<br>> > <<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>> escreveu:<br>> ><br>> >> 47<br>



> >><br>> >> On Nov 29, 2012 11:35 PM, "Renato Santos" <<a href="mailto:renato.cron@gmail.com" target="_blank">renato.cron@gmail.com</a>> <br>> >> wrote:<br>> >><br>> >>> #define float_epsilon 0.00001;<br>



> >>> #define float_equal(a,b) (fabs((a) - (b)) < float_epsilon)<br>> >>><br>> >>> BTW<br>> >>><br>> >>> 2012/11/29 Blabos de Blebe <<a href="mailto:blabos@gmail.com" target="_blank">blabos@gmail.com</a>><br>



> >>><br>> >>>> float_equal<br>> >>><br>> >>> --<br>> >>><br>> >>> Saravá,<br>> >>> Renato CRON<br>> >>><br>> >>> <a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a> [1]<br>



> >>> @renato_cron [2]<br>> >>><br>> >>> _______________________________________________<br>> >>> Rio-pm mailing list<br>> >>> <a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>



> >>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a> [3]<br>> ><br>> >> _______________________________________________<br>> >> Rio-pm mailing list<br>



> >> <a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>> >> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a> [3]<br>> ><br>



> > _______________________________________________ Rio-pm mailing list<br>> > <a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>



> ><br>> > Links:<br>> > ------<br>> > [1] <a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>> > [2] <a href="http://twitter.com/#%21/renato_cron" target="_blank">http://twitter.com/#%21/renato_cron</a><br>



> > [3] <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>> ><br>> > _______________________________________________<br>> > Rio-pm mailing list<br>



> > <a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>> > <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>> <br>> _______________________________________________<br>



> Rio-pm mailing list<br>> <a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>



</div></div></div>                                      </div></div>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div><span style="color:rgb(51,51,51);font-size:x-small">Saravá,</span></div>



<div><span style="color:rgb(51,51,51);font-size:x-small">Renato CRON</span></div><div><div style="text-align:right"><font color="#333333" size="1"><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a></font></div>



</div><div style="text-align:right"><font color="#333333" size="1"><a href="http://twitter.com/#%21/renato_cron" target="_blank">@renato_cron</a></font></div><br>
</div></div>
<br>_______________________________________________
Rio-pm mailing list
<a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a></div></div></div>                                           </div></div>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div><span style="color:rgb(51,51,51);font-size:x-small">Saravá,</span></div>

<div><span style="color:rgb(51,51,51);font-size:x-small">Renato CRON</span></div><div><div style="text-align:right"><font size="1" color="#333333"><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a></font></div>

</div><div style="text-align:right"><font size="1" color="#333333"><a href="http://twitter.com/#!/renato_cron" target="_blank">@renato_cron</a></font></div><br>
</div>