[SP-pm] Dúvida sobre como "jogar" um array dentro de um hash.
"Flávio R. Lopes"
flavio.lopes at links.inf.br
Wed Jul 21 19:36:33 PDT 2010
Em 21-07-2010 23:27, Bruno Buss escreveu:
> push @juncao_elementos, @array1, @array2;
Nossa!...que "difícil" heim! :p
Obrigado Bruno
>
> 2010/7/21 "Flávio R. Lopes" <flavio.lopes em links.inf.br
> <mailto:flavio.lopes em links.inf.br>>
>
> Aproveitando a oportunidade, teria jeito mais fácil do que este
> que eu fiz para juntar dois Arrays em um terceiro array, por exemplo:
>
> my @array1 = qw ( 4 5 6 7 );
> my @array2 = qw ( 8 9 );
>
> foreach my $elementos ( @array1, @array2 ) {
>
> push @juncao_elementos, $elementos;
>
> }
>
>
>
>
> Em 21-07-2010 22:45, Daniel de Oliveira Mantovani escreveu:
>
> Você pode contar o tanto de vezes que aparece em seguida,
>
> use strict;
> use warnings;
> use Data::Dumper;
>
> my @numeros = ( 1, 2, 3, 4, 5, 6, 6, 6, 5 );
> my %hash = map { $_ => { $_ => ++$_{$_} } } @numeros;
>
> print Dumper %hash;
>
> <resultado>mantovani em mantovani-desktop:~$ perl foo.pl
> <http://foo.pl>
> $VAR1 = '6';
> $VAR2 = {
> '6' => 3
> };
> $VAR3 = '4';
> $VAR4 = {
> '4' => 1
> };
> $VAR5 = '1';
> $VAR6 = {
> '1' => 1
> };
> $VAR7 = '3';
> $VAR8 = {
> '3' => 1
> };
> $VAR9 = '2';
> $VAR10 = {
> '2' => 1
> };
> $VAR11 = '5';
> $VAR12 = {
> '5' => 2
> };
> </resultado>
>
>
> 2010/7/21 "Flávio R. Lopes"<flavio.lopes em links.inf.br
> <mailto:flavio.lopes em links.inf.br>>:
>
> Humm....
>
> Obrigado pessoal!
>
> Em 21-07-2010 21:41, Giuliani Sanches escreveu:
>
> Flávio,
>
> Hash não permite a duplicação de chaves. Ao adicionar
> o primeiro 6,
> ele simplesmente vai sobrescrevendo o conteúdo e como
> todos são 6,
> você tem o resultado obtido.
>
> []'s
>
> Em 21 de julho de 2010 21:31, "Flávio R. Lopes"
> <flavio.lopes em links.inf.br
> <mailto:flavio.lopes em links.inf.br>> escreveu:
>
>
> Olá pessoal.
>
> Num dos exercícios que estou fazendo, uma das
> soluções (pelo menos que
> estou
> imaginando) seria colocar o conteúdo de um array
> dentro de um hash, mas
> quando os elementos são repetidos, só insere a
> primeira instância do
> elemento.
>
> Supondo um array com os elements:
>
> my @numeros = (1, 2, 3, 4, 5, 6, 6, 6, 5);
>
> my %hash = map { $_ => $_ } @numeros;
>
> while ( my ($chave, $valor) = each %hash ) {
>
> say "$chave => $valor";
>
> }
>
>
> Tenho como saída:
> 6 => 6
> 4 => 4
> 1 => 1
> 3 => 3
> 2 => 2
> 5 => 5
>
>
> Porque os outros dois elementos "6" e o último
> elemento "5" não são
> armazenados dentro do hash?
> Gostaria que produzisse a seguinte saída (como
> todos os 9 elementos do
> array):
>
> 6 => 6
> 6 => 6
> 6 => 6
> 4 => 4
> 1 => 1
> 3 => 3
> 2 => 2
> 5 => 5
> 5 => 5
>
> Onde estou errando?
>
> Abraço,
> Flávio
>
>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org <mailto:SaoPaulo-pm em pm.org>
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
>
>
>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org <mailto:SaoPaulo-pm em pm.org>
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
>
>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org <mailto:SaoPaulo-pm em pm.org>
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
>
>
> --
> Bruno C. Buss
> http://brunobuss.wordpress.com/
> http://www.dcc.ufrj.br/~brunobuss/ <http://www.dcc.ufrj.br/%7Ebrunobuss/>
>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20100721/28edcc33/attachment.html>
More information about the SaoPaulo-pm
mailing list