-Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 11.05.2007
Записей: 662
Комментариев: 257
Написано: 587


Программерам

Вторник, 11 Марта 2008 г. 22:53 + в цитатник
Сегодня во френдленте наткнулся на пост уважаемого
info
binaryanimal
, предлагающий использовать выражение (m-4)*(m-6)*(m-9)*(m-11)?m-2?31:y%4?28:2 9:30 для вычисления количества дней в месяце m в зависимости от года y (в пределах от 1901 до 2099 гг). Мне это выражение не очень понравилось тем, чем переменная m встречалась слишком часто, да и тернарных операторов условия многовато, в связи с чем я поднапрягся и вывел его в виде 31-((m+5)%13%2?(!!(m==2)*(1+!!(y%4))+1):0) . Вопрос к уважаемым френдам, сможет ли кто-нить укоротить это выражение не увеличивая количество вхождений переменных m и y? Чур, использовать только с-like синтаксис.

Сообщение добавлено через MovableType API


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку