Я пытаюсь перебрать диапазон дней недели, где каждый день недели соответствует целому числу (Sunday = 1, Monday = 2, ..., Saturday = 7)
.
Диапазон определяется start and end day
. Это нормально для начального и конечного дня, например Monday(2) - Thursday(5)
, так как я могу просто сделать:
for(int i = startDay; i <= endDay; i++) { ... }
У меня возникают трудности, когда диапазон делится на конец и начало недели, например Friday(6) - Monday(2)
. Это, очевидно, не работает с указанным выше циклом for - например.
for(int i = 6; i <= 2; i++) { ... } // wouldn't even execute once.
Единственное решение, которое я вижу, — это реализация своего рода циклического буфера, который, как мне кажется, излишен для такой простой проблемы. Я просто в тупике и, скорее всего, здесь не хватает чего-то очевидного. Я думаю, что решение может иметь какое-то отношение к модульной арифметике, но я не совсем уверен.