// DatumsEingabe.java MM 2009 import Tools.IO.*; // Eingaben /** * Eingabe eines Datums. */ public class DatumsEingabe { /** * Eingabe eines Datums, * Ueberpruefen der Korrektheit, * Ausgabe des Datum. */ public static void main( String[] args) { System.out.print( "Datumseingabe"); // Datum Datum datum = new Datum(); // Datumseingabe do // Jahr { datum.jahr = IOTools.readInteger( "Jahr (1600 .. 3000): "); } while( datum.jahr < 1600 || datum.jahr > 3000); do // Monat { datum.monat = IOTools.readInteger( "Monat (1 .. 12): "); } while( datum.monat < 1 || datum.monat > 12); boolean schaltJahr = false; // Schaltjahr int cc = datum.jahr / 100; int jj = datum.jahr % 100; if( jj == 0) schaltJahr = cc % 4 == 0; else schaltJahr = jj % 4 == 0; int anzahl = 0; // Anzahl der Tage im Monat switch( datum.monat) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: anzahl = 31; break; case 4: case 6: case 9: case 11: anzahl = 30; break; case 2: if( schaltJahr) anzahl = 29; else anzahl = 28; } do // Tag { datum.tag = IOTools.readInteger( "Tag (1 .. " + anzahl + "): "); } while( datum.tag < 1 || datum.tag > anzahl); // Datumsausgabe System.out.println ( datum.tag + "." + datum.monat + "." + datum.jahr); } }