A division problem
Asman01
jckj33 at gmail.com
Mon Mar 24 13:54:06 PDT 2014
On Monday, 24 March 2014 at 03:55:41 UTC, bearophile wrote:
> This kind of code sometimes is wrong, because you forget to
> cast x to double before the division and you lose precision
> (but here the compiler knows that the result of the division
> will go inside a double):
>
>
> void main() {
> int x = 15;
> double y = x / 10;
> }
>
> The cause is that unfortunately in D the integer division uses
> the same operator as the FP division. In Python there is the /
> and // operators. In OcaML there are the / and /., in Delphi
> there are the / and div operators, in Ada the two operands need
> to be of the same type.
>
> Seasoned C/C++/D programmers watch for the types every time
> they perform a division, to avoid that trap. But less
> experienced programmers introduce bugs with divisions. Can D
> help the programmer reduce the frequency of similar bugs? And
> do we want to?
>
> Bye,
> bearophile
I think I've see a thread very similar to this... well, most
willn't like but a possible solution to help programmer reduce
this is do what python did: a new operator.
More information about the Digitalmars-d
mailing list