[SP-pm] Ajuda com vetor de 2 dimensões
Renato Santos
renato.cron at gmail.com
Tue Dec 7 07:01:50 PST 2010
O codigo ta é muito doido!
se for igual ela disse: " frase1: xxxx; frase2: yyyyyy; frase3: zzzzz"
deve ser um arquivo assim:
frases.txt
*is simply: 1234
dummy text of: 456
the printing and typesetting: 789
industry. Lorem Ipsum has been: 110
*
le_txt.pl:*
use strict;
use warnings;
use utf8;
open(my $fh, '<:encoding(utf8)', 'frases.txt') or die("Error $!");
while (my $linha = <$fh>){
my ($frase, $pontuacao) = ($linha =~ /([^\:]+)\s*\:\s*(\d+)/o);
# voce poderia fazer um push numa array com duas dimensoes:
# push(@array_com_as_linhas, [$frase, $pontuacao])
# ou montra um HASH e jogar numa array:
# push(@array_com_os_hashs, {frase => $frase, pontuacao => $pontuacao});
# ou printar aqui mesmo:
print "'$frase' tem $pontuacao pontos\n";
# pois nao ha processamento neles.
}
close($fh);
*
2010/12/7 Eden Cardim <edencardim at gmail.com>
> >>>>> "Blabos" == Blabos de Blebe <blabos at gmail.com> writes:
>
>
> Blabos> print $vetor->[0], "=", $vetor->[1], "\n";
>
> Blabos> Você está acessando um elemento de um vetor *unidimensional*,
> mas o
> Blabos> seu "vetor" é *bidimensional*.
>
> Na verdade, da forma que o array foi construído:
>
> $vetor[$i] = [$frase, $pontuacao];
>
> ela já está iterando na segunda dimensão:
>
> for my $vetor (@vetor){
> print $vetor->[0], "=", $vetor->[1], "\n";
> }
>
> então não precisa dos dois índices. O problema foi a nomenclatura
> das variáveis.
>
> --
> Eden Cardim
> Software Engineer
> +55 73 9986-3963
> edencardim.com
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm at pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
--
Renato Santos
http://www.renatocron.com/blog/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20101207/3383ae2c/attachment.html>
More information about the SaoPaulo-pm
mailing list