ДП
Даниил Павлов
Использовать типы повышенной точности (double хуябл, long'и и прочее) .
Что бы переменная памяти побольше захавала.
да, использовать double, а ещё, организовывать вычисления таким образом, чтобы избежать вычитания двух больших, но мало отличающихся друг от друга чисел (10000000001 - 10000000000 машина может вполне сказать, что ответ 0 а не 1, ибо округление происходит)
Есть специальные библиотеки, уже кем-то разработанные, почему бы не воспользоваться ими.
Есть и для целочисленных, и для плавающей точки.