import java.util.Calendar;
import java.util.GregorianCalendar;
public class CountingSundays {
public static void main(String args[]) {
Calendar cal = new
This is just a simple logic error. If even one of those is false (say, if the month IS 0), then you have true && false && true, which is false.
You need the "not" outside of the entire expression, or you need to use "||" to combine them:
while( !(year == 2001 && month == 0 && day == 1) )
or
while( (year != 2011) || (month != 0) || (day != 1) )