Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmCdNE 81 of 373 menu
◀ ▶

Сравнение NaN в Rust

Нечисло не равно даже самому себе. Результат дробного выражения 0.0 / 0.0 не ведет себя как обычное число при сравнении.

Проверка == с таким значением дает false, даже если сравнивают одну и ту же переменную с собой. Это особое правило запоминают отдельно от обычных чисел.

Запишем нечисло и сравним его с самим собой:

let x = 0.0 / 0.0; println!("{}", x == x);

На экране будет false, хотя переменная одна и та же:

let x = 0.0 / 0.0; if x == x { println!("equal"); } else { println!("not equal"); }

Дана переменная:

let v = 0.0 / 0.0;

Выведите результат сравнения v с v.

Дана переменная:

let bad = 0.0 / 0.0;

Выведите "same" или "diff" по правилу урока.

Скажите, чем сравнение обычного дробного числа с самим собой отличается от нечисла.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить