Возникла необходимость определять, когда переменная принимает значение NaN (Not-a-number).
Не работала конструкция, когда отваливался модуль с аналоговыми входами из сети
If var>up_limit THEN
var:= up_limit
END_IF
Понравился один из методов:
"Можно также воспользоваться особым свойством NaN - оно не равно ни одному числу, в т.ч. и самому себе:"
VAR
rVar: REAL;
xIsNaN: BOOL;
END_VAR
rVar := SQRT(-1.0); // генерируем NaN
xIsNaN := (rVar<>rVar);
Источник www.owen.ru/...644
Где вы еще найдете что-то, не равное самому себе :)
Около минуты
1 сентября 2022
143 читали