Soluzione 3.6

Prestare attenzione a come e` stata formulata la condizione di anno bisestile. Un anno e` bisestile se e solo se
(e` divisibile per quattro) e non(e` un anno "eccezionale").
Cosa sono gli anni "eccezionali"? Sono quelli
(successivi al 1582) e (divisibili per cento) e non(divisibili per 400).
In definitiva un numero intero positivo input rappresenta un anno bisestile se e solo se
(input % 4 == 0) && !( (input > 1582) && (input % 100 == 0) && (input % 400 != 0) )
import java.util.Scanner;

public class LeapyearTester_lab3_1
{
  public static void main(String[] args)
  {
    
    Scanner in = new Scanner(System.in);
    boolean done = false;
    while (!done)
      {
	System.out.println("Inserire anno (0 per uscire):");
	int input = in.nextInt();

	if (input == 0)
	  done = true;
	else if (input < 0)
	  System.out.println("Deve essere un numero positivo...");
	else
	  {
	    boolean isLeapyear = false;
	    if ( (input % 4 == 0) && !( (input > 1582) && (input % 100 == 0) &&
					(input % 400 != 0) ) )
	      isLeapyear = true;
	    
	    if (isLeapyear)
	      System.out.println("E` bisestile!!");
	    else
	      System.out.println("Non e` bisestile...");
	  }
      }
  }
}