/* Manipulations sur une classe date          */

public class ManipulationDates2 {

/* Type agrege de stockage des informations   */
/* relatives a une date codee sous la forme   */
/* jour, mois, annee                          */

  static class Date {
    int j = 1;
    int m = 1;
    int a = 1901; };

/* Programme principal                        */

  public static void main(String [] args) {
    Date dt = new Date();
    Ecran.afficherln("SVP, j, m & a?");
    dt.j = Clavier.saisirInt();
    dt.m = Clavier.saisirInt();
    dt.a = Clavier.saisirInt();
    dt.j = dt.j+1;
    if ( dt.m == 2 ) {
      if ( ( (dt.a%400) == 0 ) || ( ( (dt.a%4) == 0 ) && ( (dt.a%100) != 0 ) ) ) {
        if ( dt.j == 30 ) {
          dt.j = 1;
          dt.m = 3; } }
        else {
        if ( dt.j == 29 ) {
          dt.j = 1;
          dt.m = 3; } } }
      else
      if ( ( dt.m == 4 ) || ( dt.m == 6 ) || ( dt.m == 9 ) || ( dt.m == 11 ) ) {
        if ( dt.j == 31 ) {
          dt.j = 1;
          dt.m = dt.m+1; } }
        else {
        if ( dt.j == 32 ) {
          dt.j = 1;
          dt.m = dt.m+1;
          if ( dt.m == 13 ) {
            dt.m = 1;
            dt.a = dt.a+1; } } }
    Ecran.afficherln(dt.j,"/",dt.m,"/",dt.a);
  }
}