Здравствуйте, Кодт, Вы писали:
К>Как получить номер недели, с учётом всех вышеупомянутых правил? И с учётом того, что в локали может стоять первый день недели — воскресенье, среда, чёрт-знает-что? А ISO-шная неделя — строго с понедельника.
Блин, может я чего не понимаю.
1. Берем за отправную точку текущий год.
2. Расчитываем порядковый номер необходимого нам дня года.
3. Вычитаем из него количетво дней от 1 января до первого понедельника текущего года.
4. Делим полученное число на 7.
5. Если нужно сделать расчет на следующий год или на предыдущий, то вносишь соответствующие поправки в п.3, т.е. для следующего года +1, для предыдущего -2, т.к. этот год високосный.
Мой компьютер прогоняет бесконечный цикл за 9 секунд, но, мне кажется, он мог бы сделать это быстрее...