[1] Perché ottengo una lunga serie di decimali (es. 19.9499999999999) invece dei numeri che dovrei ottenere (es. 19.95)?
Internamente, il vostro computer rappresenta i numeri in virgola mobile in
binario. I computer digitali (che lavorano in potenze di due) non possono
memorizzare tutti i numeri in maniera esatta. Alcuni numeri reali perdono
precisione in questo processo. Questo problema è relativo a come
i computer memorizzano i numeri ed incide su tutti i linguaggi di
programmazione, non solo su Perl.
In perlnumber sono mostrati tutti i minimi dettagli della rappresentazione
e conversione dei numeri.
Per limitare il numero di cifre decimali nei numeri, potete usare la funzione
printf o sprintf. Consultate perlop/"Floating-point Arithmetic" per
maggiori dettagli.
Copyright (c) 1997, 1998, 1999, 2000, 2001 Tom Christiansen e Nathan
Torkington. Tutti i diritti riservati.
Questa documentazione è libera; puoi ridistribuirla e/o
modificarla secondo gli stessi termini applicati al Perl.
Indipendentemente dalle modalitè di distribuzione, tutti gli esempi di
codice in questo file sono rilasciati al pubblico dominio. Potete, e
siete incoraggiati a farlo, utilizzare il presente codice o qualunque
forma derivata da esso nei vostri programmi per divertimento o per profitto.
Un semplice commento nel codice che dia riconoscimento alle FAQ sarebbe cortese
ma non è obbligatorio.
mongers@perl.it è la lista ufficiale di Perl Mongers Italia per
porre quesiti di tipo tecnico, per rimanere aggiornato su meeting,
incontri, manifestazioni e novità su Perl.it. Iscriviti!