fmod() и fmodl() возвращают неверное значение в c
Один пример моей проблемы.
#include <stdio.h>
#include <math.h>
int main() {
long double mod = fmod(0.06, 0.02);
printf("%Le", mod); //prints 2.000000e-02 instead of 0.000000e+00.
long double mod1 = fmod(0.006, 0.002);
printf("%Le", mod1); //prints 0.000000e+00 correct.
return 0;
}
Как я могу решить, чем проблема, я пытался использовать fmodf()
а также fmodl()
но у меня та же проблема с другими ценностями.
я должен работать с длинным двойным, так что есть ли способ решить это...