Алгоритм ВКЛ/ВЫКЛ для таймера
|
|
DAY |
Дата: Ср, 24.04.2013, 01:21 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
21
Замечания:
±
На сайте с 09.03.2011
Статус:
Offline
|
Доброго времени суток, стоит след. задача. Нужно 10 интервалов сравнивать с текущим временем и определять какое состояние должно быть на выходе.
вот кусок для 1 интервала
IF tON > tOFF THEN IF Time >= tON AND Time < tOFF THEN OUT = 1 ' IF Time >= tON AND Time > tOFF THEN OUT = 1 ' IF Time <= tON AND Time < tOFF THEN OUT = 1 ' IF Time < tON AND Time >= tOFF THEN OUT = 0 ' ENDIF IF tON < tOFF THEN ' IF Time >= tON AND Time < tOFF THEN OUT = 1 ' IF Time > tON AND Time >= tOFF THEN OUT = 0 ' IF Time < tON AND Time <= tOFF THEN OUT = 0 ' IF Time < tON AND Time >= tOFF THEN OUT = 0 ' ENDIF ' IF tON = tOFF THEN OUT = 0 ENDIF
можно конечно проверять 10 раз для каждого интервала таким способом но должен быть более элегантный способ, может кто подкинет мыслю
Этот код кстати рабочий и проверен на практике, выдуман мной. Прошу тупым не называть, если можно проще.))
Найденное на халяву, исчезает мгновенно, лишь сто раз заработанное всегда будет твоим.
Сообщение отредактировал
DAY - Ср, 24.04.2013, 01:28
|
|
|
|
retas |
Дата: Ср, 24.04.2013, 10:52 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
А так не подайдёт (пишу навскидку) IF tON > tOFF THEN IF Time >= tON AND Time < tOFF THEN OUT = 1 ' IF Time >= tON AND Time > tOFF THEN OUT = 1 ' IF Time <= tON AND Time < tOFF THEN OUT = 1 ' IF Time < tON AND Time >= tOFF THEN OUT = 0 else OUT=1' ENDIF IF tON < tOFF THEN ' IF Time >= tON AND Time < tOFF THEN OUT = 1 ' IF Time > tON AND Time >= tOFF THEN OUT = 0 ' IF Time < tON AND Time <= tOFF THEN OUT = 0 ' IF Time < tON AND Time >= tOFF THEN OUT = 0 else OUT=0' ENDIF ' IF tON = tOFF THEN OUT = 0 ENDIF
|
|
|
|
DAY |
Дата: Ср, 24.04.2013, 21:08 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
21
Замечания:
±
На сайте с 09.03.2011
Статус:
Offline
|
Ну это да, в правильном направлении, спс.
По поводу десяти интервалов получается, в каждом вешаем флаг если вкл. Потом, если хоть в одом висит флаг, включаем выход.
Может еще как-то?
Найденное на халяву, исчезает мгновенно, лишь сто раз заработанное всегда будет твоим.
|
|
|
|