Страница 6 из 11 ПерваяПервая ... 45678 ... ПоследняяПоследняя
Показано с 51 по 60 из 108

Тема: ST функции OWEN Logic

  1. #51
    Пользователь
    Регистрация
    14.07.2021
    Адрес
    Орел
    Сообщений
    89

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Да должна выполняться только 1 функция внутри. Но это не точно)))
    .....
    Ну как не точно? Выполняется код функции, которая внутри условия. Другая же ветвь не выполняется? Что там еще тестировать то? Все работает. Ну если только и правда в железе не заработает?

  2. #52

    По умолчанию

    Цитата Сообщение от lagutin Посмотреть сообщение
    Ну как не точно? Выполняется код функции, которая внутри условия. Другая же ветвь не выполняется? Что там еще тестировать то? Все работает. Ну если только и правда в железе не заработает?
    Разговор не про работоспособность кода, а про увеличение длительности цикла программы, в зависимости от того, обе функции выполняются внутри функции или только одна по условию.

  3. #53
    Пользователь
    Регистрация
    14.07.2021
    Адрес
    Орел
    Сообщений
    89

    По умолчанию

    А как это проверить то? Но как она может выполняться, если код в else, к примеру, не выполняется, если первое условие выполнилось? Это у же слишком сильные заморочки и подозрительность

  4. #54
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    2,317

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    проверить просто, написать одинаковый "тяжелый" код в обеих ветках условия ..
    Сложно как-то.
    Это же, но по бразильской системе.
    Код:
    function jopa: bool;
        var_input
            in : bool;
        end_var
    
        while in do
           ; //максимально тяжелый код
        end_while
        jopa := not in; //инверсия для показать проход функции
    end_function
    
    
    function func: bool;
        var_input
           in : bool;
        end_var
    
        if in then
          func := jopa(true);
        else
          func := jopa(false);
        end_if
    end_function
    func на холст и прилепить вход и выход
    Кто докажет ОБА вызова jop'ы при func(false) ?

  5. #55

    По умолчанию

    Попробовал...
    1.При запуске эмуляции все нормально.
    2.При подаче на вход - бесконечный цикл.
    Что говорит о том, что вроде как выполняется одна функция????
    Но это не точно
    Я заменил "тяжелый код"

    Код:
    // while in do
        //   ; //максимально тяжелый код
       // end_while
       for i := 0 to 1000000 do
           ;
       end_for
    И вот, бесконечный цикл уже на этапе запуска симуляции и она уже не запускается. Это проверка симулятора или как то осуществляется пробег по всем функциям? Хотя лоджик интерпретатор и выполняет код построчно? Не, ну их домыслы, факты на скринах.f1.jpgf11.jpgf111.jpg

  6. #56
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    2,317

    По умолчанию

    Глубины мысли с for'ом не понял. Продолжаем лепить про исполнение всех веток if ?

  7. #57
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    после прочтения статьи про алгоритмы быстрого умножения написал вариант, проверил, все работает
    Вложения Вложения
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  8. #58

    По умолчанию

    Цитата Сообщение от Денисов Максим Сергеевич Посмотреть сообщение
    Уважаемые коллеги!

    Уже больше года как функции на ST появились в OWEN Logic и многие из вас активно применяют новый функционал в своих проектах, впрочем, как и наши разработчики алгоритмов в различных готовых решениях.
    Мы хотим поделиться с вами некоторыми ST функциями, которые сделают разработку ваших проектов проще и быстрее.
    Нашёл ошибку в функции, Преобразование Даты и Времени в формат UnixTime, в первом посте. Нашёл случайно, работая с преобразованием времени.
    В массиве с 0 по 12, должно быть 13 чисел, а у вас только 12, с января по ноябрь есть , а Декабрь потеряли, нет последнего числа 31. 1 Ошибка в функции .jpg
    Последний раз редактировалось kondor3000; 24.03.2023 в 23:57.

  9. #59
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    1,087

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Нашёл ошибку в функции, Преобразование Даты и Времени в формат UnixTime, в первом посте. Нашёл случайно, работая с преобразованием времени.
    В массиве с 0 по 12, должно быть 13 чисел, а у вас только 12, с января по ноябрь есть , а Декабрь потеряли, нет последнего числа 31. 1 Ошибка в функции .jpg
    Массив нужен для нахождения количества дней с начала года до текущего дня. Поэтому в декабре нам нужен только день месяца, к которому мы прибавляем количество дней в предыдущих месяцах

  10. #60

    По умолчанию

    Судя по коду 12 месяц и не нужен, тогда и массив надо сделать с 0 до 11.

Страница 6 из 11 ПерваяПервая ... 45678 ... ПоследняяПоследняя

Похожие темы

  1. Групповые запросы в Owen Logic. Что хотите видеть в этой функции?
    от EvgenyR в разделе Программируемые реле
    Ответов: 37
    Последнее сообщение: 05.07.2023, 15:26
  2. Owen Logic 2.1 нет экспорта устройства в Owen Cloud.
    от Григори в разделе Среда программирования OWEN Logic
    Ответов: 4
    Последнее сообщение: 12.10.2022, 19:33
  3. Добавление аварийных ситуаций в Owen Logic на ПР200 для отображения в Owen Cloud.
    от Григори в разделе Среда программирования OWEN Logic
    Ответов: 6
    Последнее сообщение: 07.07.2022, 11:09
  4. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Программируемые реле
    Ответов: 401
    Последнее сообщение: 28.07.2016, 19:46
  5. Тригонометрические функции OWEN Logic
    от POMAXA в разделе Среда программирования OWEN Logic
    Ответов: 36
    Последнее сообщение: 13.02.2016, 12:11

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •