On Wednesday, 30 June 2021 at 16:41:40 UTC, someone wrote:
On Wednesday, 30 June 2021 at 16:24:38 UTC, Andre Pany wrote:

Side note: in case you want to work with money, you may consider using a specific data type like https://code.dlang.org/packages/money instead of float/double.

Yes, I've seen it, and in a previous-unrelated post I commented I am planning to use it (or something similar) because floats and currency are a horrible combo. I am not using it right now because I want to learn the language and encountering situations like this one helps me a lot, otherwise, I would have never noted such NaN behavior -to me, there are a lots of things that could fly under the radar at this moment. And by the way, looking at the code, money seems a quite simple non-nonsense implementation making it a solid candidate :)

Thanks for the tip Andre !

What you actually should do when working with money which is what a lot of banking solutions etc. do is working with cents only in 2 decimal places.

So 25.98 would be represented as 2598.

It makes sure that you’ll never have rounding errors or floating point representations that are wrong.

Reply via email to