[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