Время работы программы с 22 до 5 утра, условие как вывести?
Какое условие сделать, чтобы программа работала с 22 часов текущего дня до 5 утра следующего дня.
Пример:
a = 22; // Время с
b = 5; // Время до
x = 1; // Текущее время
Эти переменные известны, тип integer.
Я вывел примерное условие, но оно неверно:
(x >= a and x <= b) но в таком случае выражение будет false из-за того что имеется переход между сутками.
Словил тупняк, помогите, пожалуйста.
Формула не верна, если С 23 до 5 утра, в случае переноса суток, она всегда будет верна и программа будет работать всегда. Но выше уже подсказали верную формулу.
Входные параметры не предполагают фиксации дня выполнения задания и отслеживание текущего значения дня. И та и другая формула будет работать одинаково. Единственное, если время задания установили в момент проведения, то выполнение начнется немедленно.
Я имею в виду такую ситуацию, что a и b переменные
a принадлежащий [0, 23] и b принадлежащий [0, 23]
И текущее время x принадлежащий [0, 23]
Таким образом может быть ещё ситуация, когда a = 1, b = 10, x = 19;
То есть время работы программы с 1 до 10, тогда формула (x >= a or x <= b) неверна т.к.
(19 >= 1 or 19 <= 10) == true, по первому равенству, но это будет работать если a > b.
Но я просто сделал разные формулы для a > b и a < b