[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