Оператор «Меньше, чем» Ведет Себя Не так, как Ожидалось

#if-statement #logic #operators

Вопрос:

Я выполняю очень простое упражнение, которое сравнивает разницу между двумя числами и выводит «Числа почти равны», если разница меньше 0,01

Однако оператор if срабатывает даже тогда, когда разница равна 0,01. Что я делаю не так?

 int main()
{
    double val1;
    double val2;
    while (cin >> val1 >> val2)
        if (val1 < val2) {
            cout << "The smaller value is: " << val1 << "n";
            cout << "The larger value is: " << val2 << "n";
            if ((val2 - val1) < (1.0 / 100))
                cout << "The numbers are almost equal" << "n";
        }
        else if (val1 == val2)
            cout << "The numbers are equaln";
        else {
            cout << "The smaller value is: " << val2 << "n";
            cout << "The larger value is: " << val1 << "n";
            if ((val1 - val2) < (1.0 / 100))
                cout << "The numbers are almost equal" << "n";
        }
}