Since noone has linked to it yet: What Every Programmer Should Know About Floating-Point Arithmetic
Note that if you don't care about taking a performance hit (which can be quite significant depending on how many variables and calculations you're using in your actual script, so make sure to benchmark), you can enable bignum. Note that it can also be enabled only for smaller lexical scopes, which is what I'm showing here:
my $x1 = (1.15*170)+0.50;
my $x2 = int($x1);
print "A: Number is: $x1, Integer part is: $x2\n";
{
use bignum;
my $x3 = (1.15*170)+0.50;
my $x4 = int($x3);
print "B: Number is: $x3, Integer part is: $x4\n";
}
__END__
A: Number is: 196, Integer part is: 195
B: Number is: 196, Integer part is: 196
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|