[SP-pm] Ajuda em matriz

Daniel Projetos daniel_projetos2003 em yahoo.com.br
Quinta Agosto 9 07:23:11 PDT 2007


Valeu!!

Funcionou certinho, agora a minha dúvida é a seguinte:
Os valores que somamos estão assim:

3344343, lê-se 33443,43

Como somei sobrou um valor com acima, preciso apenas colocar nos dois 
últimos caracteres a virgula antes.

Outra dúvida é quando eu tiver um montão de zeros na frente, ex:

000000000004345443434
000000000000002342342
000002342342342342342

Preciso que retire todos zeros da frente e coloque virgula no final:


43454434,34
23423,42
23423423423423,42

tkssss

Bunduki

----- Original Message ----- 
From: "Nelson Ferraz" <nferraz em gmail.com>
To: <saopaulo-pm em mail.pm.org>
Sent: Wednesday, August 08, 2007 6:33 PM
Subject: Re: [SP-pm] Ajuda em matriz


#!/usr/bin/perl

use strict;
use warnings;

# skip 6 bytes, get 5; skip 5, get 5; skip 6, get 1
my $UNPACK_TEMPLATE = "x6 A5 x5 A5 x6 A1";

my %sum = ();
while ( my $string = <DATA> ) {
    chomp $string;
    next if !$string;
    my ( $key, $value, $op ) = unpack( $UNPACK_TEMPLATE, $string );
    if ( $op eq 'C' ) {
        $sum{$key} -= $value;
    } else {
        $sum{$key} += $value;
    }
}

use Data::Dumper;
print Dumper \%sum;

__DATA__

xxxxxxPETR4xxxxx10000xxxxxxC
xxxxxxPETR4xxxxx12000xxxxxxV
xxxxxxVALE5xxxxx10000xxxxxxC
xxxxxxVALE5xxxxx14000xxxxxxV
_______________________________________________
SaoPaulo-pm mailing list
SaoPaulo-pm em pm.org
http://mail.pm.org/mailman/listinfo/saopaulo-pm 



Mais detalhes sobre a lista de discussão SaoPaulo-pm