[Roma.pm] - perfunc
Emanuele Zeppieri
ema_zep at libero.it
Wed Feb 6 04:18:20 PST 2008
kanak at perl.it wrote:
> qual'e' l'omologo di
> sprintf "%b", $numero?
>
> come hex($numero)
> e' l'omologo di
> sprintf "%x", $numero.
>
> per dirla piu' chiara:
> ce' una funzione che ti dice quaanto vale un numero binario?
Sul piano della semplicità d'uso, forse la soluzione migliore è data dal
pragma bignum (il modulo bignum è probabilmente già incluso nella tua
distribuzione, per cui non devi neanche installarlo):
use bignum;
my $bin = 0b1100011111;
my $dec = $bin->as_int; # 799
(Ricordati solo che i valori binari devono avere "0b" iniziale.)
Addirittura puoi applicare i metodi direttamente ai valori letterali,
come se fossero first-class objects (potenza del constant overloading):
print 799->as_bin; # stampa 0b1100011111
print 0b1100011111->as_int; # stampa 799
Per giunta non hai neanche limitazioni sulla dimensione dei numeri/stringhe.
Ciao,
Emanuele.
More information about the Roma
mailing list