/* Auteur: Nicolas JANEY          */
/* nicolas.janey@univ-fcomte.fr   */
/* Fevrier 2005                   */

public class TestNumeroSecuEnConsole {

  /* Fonction de test de la validite d'un numero          */
  /* de securite sociale pour la zone mois de naissance   */

  public static boolean estBonMois(long numero) {
  /* Calcul du numero de mois et transtypage en int            */
    int mois =(int) (numero/100000000L)%100;
  /* Bon numero si mois compris entre 1 et 12 inclus           */
    return((mois >= 1) && (mois <= 12));
  }

  /* Fonction de test de la validite d'un numero          */
  /* de securite sociale pour la zone sexe                */

  public static boolean estBonSexe(long numero) {
  /* Calcul du code sexe et transtypage en int                 */
    int sexe =(int) (numero/1000000000000L);
  /* Bon numero si sexe = 1 ou sexe = 2                        */
    return((sexe == 1) || (sexe == 2));
  }

  /* Fonction de test de la validite d'un numero          */
  /* de securite sociale pour les zones sexe              */
  /* et mois de naissance                                 */

  public static boolean bonNumeroSecuriteSociale(long numero) {
  /* Bon numero si bon sexe et bon mois de naissance           */
    return(estBonSexe(numero) && estBonMois(numero));
  }

  /* Fonction principale                                  */

  public static void main(String [] args) {
    Console.setTitle("TestNumeroSecu");
  /* Variable de stockage d'un numero de securite sociale      */
  /* Type long utilise pour supporter des nombres              */
  /* entiers a 13 chiffres                                     */
    long numero;
  /* Lecture clavier du nombre a tester                        */
    Console.out.println("Tapez votre numero:");
    numero = Long.valueOf(Console.in.readLine()).longValue();
  /* Test et affichage d'un message en consequence             */
    if ( bonNumeroSecuriteSociale(numero) )
      Console.out.println("Bon");
      else
      Console.out.println("Pas bon");
  }
}