[Cascavel-pm] Soma
Igor Sutton
igor.sutton em gmail.com
Segunda Julho 10 12:27:09 PDT 2006
Agora que a gente já sabe o que você quer fazer :) Outra opção é transformar
a sua lista de resultados em um hash:
my @vals = qw(1:2 2:3 3:4);
my $x = 1;
my $y = 2;
my %tmp = map { split /:/ } @vals;
while (my ($k, $v) = each %tmp) {
$x += $k;
$y += $v;
print "$x $y\n";
}
On 7/10/06, Thomas Britis <thomas em tcnet.com.br> wrote:
>
> Tá certo.
>
> Na verdade eu tenho um looping que me retorna dados no formato:
> x:y e
> preciso somar isso a duas variaveis já existentes, algo como:
> while ($a = "2:3") { # Eh soh uma suposição. Os números não serão
> necessariamente iguais
> ($b, $c) = split (/:/, $a); # Isso era o que eu pretendia fazer.
> ($x, $y) = split (/:/, $a); $b += $x; $c += $y; # Isso eh o que faco.
> }
>
> O que me importa no fim das contas são as variaveis $b e $c com a soma
> total do que me é retornado por $a (depois do looping se desfazer).
>
> Mais uma vez, muito obrigado.
>
> Igor Sutton wrote:
> > Depende o que você chama de complexa. A sua solução depende da
> > existência de uma variável por item. Isso que eu escrevi você pode
> > colocar em uma função. Enfim, aproveite o que você quiser do exemplo :P
> >
> > On 7/10/06, *Thomas Britis* <thomas em tcnet.com.br
> > <mailto:thomas em tcnet.com.br>> wrote:
> >
> > Obrigado Igor, porém acho que sua solução é bem mais complexa do que
> a
> > minha, hehe. O que eu quero é simplificar.
> >
> > Obrigado mesmo assim.
> >
> > Igor Sutton wrote:
> > > Ups, entendi mal a questão :)
> > >
> > > Acho que você pode fazer algo do tipo:
> > >
> > > <code>
> > > my @result;
> > > my $tosum = "4:3:2:1";
> > > my @nums = qw(1 2 3 4);
> > > my @tosum = split(/:/, $tosum);
> > >
> > > for (my $i=0; $i<@tosum;$i++) {
> > > push @result, $nums[$i] + $tosum[$i];
> > > }
> > >
> > > print "@result\n";
> > > <code>
> > >
> > > On 7/10/06, *Thomas Britis* <thomas em tcnet.com.br
> > <mailto:thomas em tcnet.com.br>
> > > <mailto: thomas em tcnet.com.br <mailto:thomas em tcnet.com.br>>>
> wrote:
> > >
> > > Senhores,
> > >
> > > Existe alguma forma de se fazer o seguinte:
> > > $c = "2:3";
> > >
> > > ($a, $b) += split (/:/, $c); ???
> > >
> > > Quero somar o resultado do split em variáveis
> distintas.
> > > Hoje faço:
> > > ($x, $y) = split (/:/, $c); $a += $x; $b += $y;
> > >
> > > Obrigado.
> > > --
> > > Thomas Storino Britis
> > > TCNet Informatica e Telecomunicacoes LTDA
> > > _______________________________________________
> > > Cascavel-pm mailing list
> > > Cascavel-pm em pm.org <mailto:Cascavel-pm em pm.org>
> > <mailto:Cascavel-pm em pm.org <mailto:Cascavel-pm em pm.org>>
> > > http://mail.pm.org/mailman/listinfo/cascavel-pm
> > >
> > >
> > >
> > >
> > > --
> > > Igor Sutton Lopes
> > > http://www.izut.com/
> > >
> > >
> > >
> >
> ------------------------------------------------------------------------
> > >
> > > _______________________________________________
> > > Cascavel-pm mailing list
> > > Cascavel-pm em pm.org <mailto:Cascavel-pm em pm.org>
> > > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
> > --
> > Thomas Storino Britis
> > TCNet Informatica e Telecomunicacoes LTDA
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org <mailto:Cascavel-pm em pm.org>
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
> >
> >
> >
> > --
> > Igor Sutton Lopes
> > http://www.izut.com/ <http://www.izut.com/>
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
>
> --
> Thomas Storino Britis
> TCNet Informatica e Telecomunicacoes LTDA
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
--
Igor Sutton Lopes
http://www.izut.com/
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20060710/356546bc/attachment.html
Mais detalhes sobre a lista de discussão Cascavel-pm