if (div4 & ~( xor(div100, div400)))
div4 div100 and div400 are given by:
div4 = ((year/4) == floor (year/4)); div100 = ((year/100) == floor (year/100)); div400 = ((year/400) == floor (year/400));
No products are associated with this question.
div4, div100, and div400 are all logical variables, 1 or 0.
if (div4 & ~(xor(div100,div400)))
says "if div4 is true (1) and div100 and div400 are both false or both are true, do something"
equals 1 (true) only if both div100 and div400 are false or both are true
In other words, this logical statement is true when 'year' is to be a leap year under the Gregorian calendar. They could just as well have written
or, given the definitions of these quantities,
or, again given their definitions, even this
Play games and win prizes!Learn more