To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016
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