Chris Boget wrote:
Chris Boget wrote:
<snip>

echo "if( $originalNet != $calculatedNet ) = " . ( (int)$originalNet !==
(int)$calculatedNet ) . "<br>\n";

</snip>
Change this to echo out what you're comparing...
echo "if( ". (int)$originalNet ." != ". (int)$calculatedNet ." ) = " . (
(int)$originalNet !== (int)$calculatedNet ) . "<br>\n";
That'll show what numbers is actually trying to match.


Ok, then that begs the following questions:

If I don't cast any of the values, why do they display as being identicle?
Additionally, why does every IF check fail in that case?

There's some freaky math going on there or something. I added a couple of other echos in to see and for some reason it seems to be losing single digit value (subtracting, rounding down, I don't know).

$calculatedGross  = $originalNet + ( $originalNet * $commissionPct * 0.01 );

echo ( "Gross : " . (int)$calculatedGross ." = ". $originalNet ." + ( ".
$originalNet ." * ". $commissionPct ." *.01 )<br />\n" );

$calculatedNet    = $calculatedGross / ( 1 + ( $commissionPct * 0.01 ));

echo ( "Net : " . (int)$calculatedNet." = " . (int)$calculatedGross . " / ( 1 + ( " . $commissionPct . " * .01 ) )<br />\n" );

--
John C. Nichel
ÜberGeek
KegWorks.com
716.856.9675
[EMAIL PROTECTED]

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to