float X1(float a, float b, float c)
{
float discriminant = powf(b, 2) - 4 * a * c;
if (discriminant < 0)
{
return 0;
}
return (-b + sqrtf(discriminant)) / (2 * a * c);
}
float X2(float a, float b, float c)
{
float discriminant = powf(b, 2) - 4 * a * c;
if (discriminant < 0)
{
return 0;
}
return (-b - sqrtf(discriminant)) / (2 * a * c);
}
Вообще сатанизм. Как отличить отсутствие квадратных корней от нулевого результата?
И два раза вычислять дискриминант - тоже моветон
Ну и double лучше использовать для большей точности
Вообще сатанизм. Как отличить отсутствие квадратных корней от нулевого результата? И два раза вычислять дискриминант - тоже моветон Ну и double лучше использовать для большей точности