Задумана проверка на равенство введеного числа с плавающей точкой и 36.6
Но делается это, на самом деле, не совсем верно, дробные числа не совсем также как и целые хранятся в памяти, поэтому, число 1.0 может быть записано как условное 1.00000000000002 и все, уже равенства с 1.0 не будет, поэтому при сравнении дробных число нужно вводить, какую-то очень маленькую величину, например, eps = 1e-6 и сравнивать таким образом: if( fabs(first_number - second_number) <= eps) => ok; else => not ok
Answers & Comments
Задумана проверка на равенство введеного числа с плавающей точкой и 36.6
Но делается это, на самом деле, не совсем верно, дробные числа не совсем также как и целые хранятся в памяти, поэтому, число 1.0 может быть записано как условное 1.00000000000002 и все, уже равенства с 1.0 не будет, поэтому при сравнении дробных число нужно вводить, какую-то очень маленькую величину, например, eps = 1e-6 и сравнивать таким образом: if( fabs(first_number - second_number) <= eps) => ok; else => not ok