Информатика, опубликовано 2018-08-22 22:22:20 by Гость
Как будет выглядеть формула в паскале для вечного календаря W = ( d+[(13m-1)/5]+[5y/4]+[-7c/4] ) % 7
Ответ оставил Гость
В условии есть одна неточность: не раскрыта суть операции "квадратные скобки". На самом деле это функция floor, возвращающая целое число, не большее исходного.
Перепишем формулу в надлежащий математический вид:
В Паскале операция floor для неотрицательного вещественного числа х, а также для отрицательного вещественного числа х с нулевой дробной частью отображается на функцию Trunc(х). Если дробная часть отрицательного числа ненулевая, нужно использовать отображение Trunc(x)-1.
Теперь мы можем записать соответствующее выражение для языка Паскаль:
if c mod 4=0 then W:=-7*(c div 4) else W:=Trunc(-7*c/4)-1;
W:=(d+Trunc((13*m-1)/5)+Trunc(5*y/4)+W) mod 7;
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.
