Есть несколько числовых методов, чтобы увидеть, если вы собираетесь потерять точность, но в итоге вы должны лучше понять определение точности.
-4939600281397002,2812
и
-4939600281397002,2812000000000000
не то же самое число.
При добавлении
-2234.6016114467412141
и
-4939600281397002,2812
вместе, правильно выход будет иметь только 20 цифр точности, потому что еще 12 цифр в меньшее число бессмысленно, учитывая, что 12 цифр аналогичного размера в большем количестве: неизвестно. Вы можете предполагать, что они равны нулю, но если это так, то вы должны явно объявить их как таковые и использовать систему нумерации, которая может справиться с этим - компьютер плохо разбирается в неявных намерениях.
Что касается определения того, когда у вас возникнет эта проблема, все, что вам нужно сделать, это выяснить, имеет ли он тот же показатель (при условии, что нормализованная мантисса +/- 1 или аналогичный двоичный эквивалент). Если они не нормализованы, вам нужно будет нормализовать их для сравнения или использовать несколько более сложное сравнение с экспонентом.
Точность и точность не то же самое ...
-Adam