[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