This is topic ST- проограмма in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.
Работоспособна ли такая конструкция, или нет. Компилятор говорит что все нормально. Сделано как пример PROGRAM VAR_INPUT Объем_заказа : REAL := 10; END_VAR VAR_OUTPUT Коэф : REAL; END_VAR
while Объем_заказа > 0 do if Объем_заказа > 1 then Коэф = 1; else Коэф = Объем_заказа; end_if; end_while;
END_PROGRAM Спасибо. У меня данная программа не работает, т.е. аргумент -Коэф- не меняет значение
Posted by Гусев Александр Петрович (Участник № / Member № 2148) on :
эта конструкция неработоспособна. у вас здесь бесконечный цикл. переменная Объем_заказа не будет обновлять свое значение во время выполнения программы и выхода из цикла и самой программы никогда не произойдет. рассматривайте программу как функцию которая вызывается каждый раз при пересчете каналов. т. е. вам нужно просто написать: if Объем_заказа > 1 then Коэф := 1; else Коэф := Объем_заказа; end_if;
Posted by Vjam (Участник № / Member № 2261) on :
предполагается что Объем_заказа будет уменьшаться до 0 с каждым циклом Объем_заказа = Объем_заказа-1. просто не доконца передана программа. Сейчас переделаю. Вопрос в том , что впринципе работоспособна ли конструкция, (как в Си)
Posted by Vjam (Участник № / Member № 2261) on :
Нашел ошибку. дальше по программе. спасибо за помощь