Форум » Обработка числовых последовательностей » C4 №19 » Ответить

C4 №19

PavelG: Доброго времени суток. В файле с ответами исп. след. приём: [quote]date := (y - 1)*366 + (m-1)*31 + d–1;[/quote] Почему везде отнимается единицу? Во втором варианте реш-ия за начальное значение берётся 21001231. Но будет ли в этом случае правильно работать программа, если вводить информацию только об одном человеке с датой рождения 31.12.2100? И как, исп. язык Си(С++), узнать максимальное возможное значение чис-ла типа int? Спасибо.

Ответов - 2

oval: PavelG пишет: Почему везде отнимается единицу? до даты d.m.y прошел y-1 год, m-1 месяц и d-1 день Во втором варианте реш-ия за начальное значение берётся 21001231. Но будет ли в этом случае правильно работать программа, если вводить информацию только об одном человеке с датой рождения 31.12.2100? запустите и проверьте, на первый взгляд нет, минимальную дату надо еще больше делать, скажем 21001232 , чем плохо 32 декабря И как, исп. язык Си(С++), узнать максимальное возможное значение чис-ла типа int? А погуглить никак?

PavelG: Всё-равно не до конца ясна формула. Допустим, если брать дату 1.1.0001, то получается, что date=0, что, по-моему неверно. Растолкуйте поподробнее, пожалуйста,если я не прав.



полная версия страницы