I couldn't believe this.
A simple division returns zero without errors. How else can I be guaranteed that my all my previous code is functioning as it was, before these new changes?
double level = 1/2;
MetaQuotes. Really????? What if I have been losing money due to this? Would you refund me? If now, how can such a basic functionality be erroneous?
For sure, I'm considering other platforms now. This is devastating!!!!!
Yep . Try it on any version of any platform
Print("A : 1/2 = "+DoubleToString(div1,2));
Print("B : 1/2 = "+DoubleToString(div2,2));
Print("C : 1/2 = "+DoubleToString(div3,2));
Print("D : 1/2 = "+DoubleToString(div4,2));
Print("E : 1/2 = "+DoubleToString(div5,2));
Print("F : 1/2 = "+DoubleToString(div6,2));
Print("G : 1/2 = "+DoubleToString(div7,2));
Print("H : 1/2 = "+DoubleToString(div8,2));
It thinks the "1" is an int
The rule is to have a double type on the ... how do you call the thing that is divided , the divident
Yeah. I'm really sorry😂
It's a little ironic that this ties in with our discussion of coming from other languages: there are many in which 1 / 2 = 0.5, not 0. While I'm obviously very used to it, I've always regarded it as a counter-intuitive and pointless trap that 1 is treated as (int)1 regardless of cast/context. It's basically a legacy of times when computing power was too limited to put much intelligence into compilers, rather than a useful feature of a language.
The steps by which you then mis-identify something as an external change rather than a persistent bug in your code are, well... if you've never done it, you're the only programmer on earth who hasn't.
Please enable the necessary setting in your browser, otherwise you will not be able to log in.