Уважаемые знатоки не могу понять
PROGRAM PLC_PRG
VAR
A:REAL:=100.1;
B:REAL:=100.0;
C: REAL;
END_VAR
C:=A-B;
почему С=9.999847e-002 а не 0.1.
Уважаемые знатоки не могу понять
PROGRAM PLC_PRG
VAR
A:REAL:=100.1;
B:REAL:=100.0;
C: REAL;
END_VAR
C:=A-B;
почему С=9.999847e-002 а не 0.1.
Неплохая статья с примерами на тему вычислений с плавающей точкой:
https://docs.microsoft.com/ru-ru/off...culations-info
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Как выйти из этой ситуации если точность нужна до десятых ?
Всем Спасибо !
Заменил операцию C:=A-B ; на
C:= ( REAL_TO_DINT ( A *10 ) - REAL_TO_DINT ( B * 10 ) ) / 10.0 ;