# V6020. Division or mod division by zero.

Анализатор обнаружил ситуацию, когда может произойти деление на ноль.

Рассмотрим пример:

    if (maxHeight >= 0)
    {
      fx = height / maxHeight;
    }

В условии проверяется, что значение переменной maxHeight неотрицательно. Если эта переменная будет равна нулю, то внутри условия произойдёт деление на 0. Чтобы исправить ситуацию, необходимо выполнять деление только в том случае, когда maxHeight положительно.

Исправленный вариант:

    if (maxHeight > 0)
    {
      fx = height / maxHeight;
    }

Выявляемые диагностикой ошибки классифицируются согласно ГОСТ Р 71207–2024 как критические и относятся к типу: Ошибки деления на ноль [* см. примечание касательно языков C#, Java].

Данная диагностика классифицируется как:

CWE-369 CERT-NUM02-J

Взгляните на примеры ошибок, обнаруженных с помощью диагностики V6020.