• Как остановить "проскальзывание" IF в C#?

    32bit_me
    @32bit_me
    Программист, встраиваемые системы
    Нет, нет, нет, не так:
    if (value > 0.75 && value < 1);
                                        value = value + onePercent * 125;

    А вот так:
    if (value > 0.75 && value <= 1) {
                                        value = value + onePercent * 125;
    }

    или, на худой конец, так:
    if (value > 0.75 && value <= 1) 
                                        value = value + onePercent * 125;

    Посмотрите, у вас стоит точка с запятой после условия, это значит, что условный оператор на этом закончен, и следующая строка будет выполняться всегда.
    И пишите условия так, чтобы они перекрывали весь диапазон, т.е. если у вас в одном if есть условие x < 1.0, то в следующем должно быть x >= 1.0 или наоборот, а лучше используйте if... else...
    Ответ написан
    1 комментарий