LINUX.ORG.RU

История изменений

Исправление kravich, (текущая версия) :

Как тебе уже говорили, делать такое

if (denom == 0.0f)
нельзя, так как ты сравниваешь float значения, и из-за особенностей представления чисел с плавающей точкой твоя проверка может фейлится даже если значение denom по сути нулевое.

Делай проверки с необходимой точностью:

if( fabs(0.0f - denom) < 0.00001f )
    return false;

В общем, читай до просветления, особенно пункт 4.5

Исправление kravich, :

Как тебе уже говорили, делать такое

if (denom == 0.0f)
нельзя, так как ты сравниваешь float значения, и из-за особенностей представления чисел с плавающей точкой твоя проверка может фейлится даже если значение denom по сути нулевое.

Делай проверки с необходимой точностью:

if( denom < 0.00001f )
    return false;

Исходная версия kravich, :

Как тебе уже говорили, делать такое
[code]
if (denom == 0.0f)
[/code]
нельзя, так как ты сравниваешь float значения, и из-за особенностей представления чисел с плавающей точкой твоя проверка может фейлится даже если значение denom по сути нулевое.

Делай проверки с необходимой точностью:
[code]
if( denom < 0.00001f )
return false;
[/code]