Opsplitning til klasser
Er der nogen som kan splitte følgende program op i et par klasser for mig? Main må gerne kalde selve udregningen og evt. månedschekket fra selvstændige klasser:public class opgave4
{ public static void main(String [] args)
{ ConsoleReader console = new ConsoleReader(System.in);
System.out.println("Indtast venligst et CPR-nummer, der skal valideres (ddmmyy-xxxx:):");
String CPR = console.readLine();
System.out.println("-------------------- --------------------");
int dag_nummer = Integer.parseInt(CPR.substring(0, 2)); //opdeling af dagsnummer og månedsnummer i en substring
int mdr_nummer = Integer.parseInt(CPR.substring(2, 4));
int ciffer_1 = Integer.parseInt(CPR.substring(0, 1));
int ciffer_2 = Integer.parseInt(CPR.substring(1, 2));
int ciffer_3 = Integer.parseInt(CPR.substring(2, 3));
int ciffer_4 = Integer.parseInt(CPR.substring(3, 4));
int ciffer_5 = Integer.parseInt(CPR.substring(4, 5));
int ciffer_6 = Integer.parseInt(CPR.substring(5, 6));
int ciffer_7 = Integer.parseInt(CPR.substring(7, 8));
int ciffer_8 = Integer.parseInt(CPR.substring(8, 9));
int ciffer_9 = Integer.parseInt(CPR.substring(9, 10));
int ciffer_10 = Integer.parseInt(CPR.substring(10, 11));
int tæller1 = 0; //initialisering af første tæller
double tæller2 = 0;
switch(mdr_nummer)
{ case 1: if (dag_nummer> 31)
{tæller2++; //Den ene tæller holder styr på afviste og den anden godkendte dagnumre
System.out.println("Der er ingen dag nummer "+dag_nummer+" i januar");
break;} //afslutter første proces
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay.");
tæller1++; break;} //afslutning af eventuel validering af januar måned
case 2: if (dag_nummer> 29)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i februar");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay");
tæller1++; break;}
case 3: if (dag_nummer> 31)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i marts");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay.");
tæller1++; break;}
case 4: if (dag_nummer> 30)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i april");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay.");
tæller1++; break;}
case 5: if(dag_nummer> 31)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i maj");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay.");
tæller1++; break;}
case 6: if(dag_nummer> 30)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i juni");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay.");
tæller1++; break;}
case 7: if(dag_nummer> 31)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i juli");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay.");
tæller1++; break;}
case 8: if(dag_nummer> 31)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i august");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay");
tæller1++; break;}
case 9: if(dag_nummer> 30)
{tæller2++;
System.out.println("Der er ingen dag nummer "+dag_nummer+" i september");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+" er okay");
tæller1++; break;}
case 10: if(dag_nummer> 31)
{tæller2++;
System.out.println("Der er ingen dag nummer " +dag_nummer+ " i oktober");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+ "er okay");
tæller1++; break;}
case 11: if(dag_nummer> 30)
{tæller2++;
System.out.println("Der er ingen dag nummer " +dag_nummer+ " i november");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+ " er okay");
tæller1++; break;}
case 12: if(dag_nummer> 31)
{tæller2++;
System.out.println("Der er ingen dag nummer " +dag_nummer+" i december");
break;}
else
{System.out.println("Validering af dag nummer "+dag_nummer+ " er okay");
tæller1++; break;}
default: tæller2++;
System.out.println("Der kan kun indtastes månedsnummer i intervallet 1-12"); break;
}
if (tæller1 == 1)
System.out.println("Der testes om indtastede cpr-nummer er korrekt...");
double check_af_cpr = ((ciffer_1*4) + (ciffer_2*3) + (ciffer_3*2) +
(ciffer_4*7) + (ciffer_5*6) + (ciffer_6*5) + (ciffer_7*4) + (ciffer_8*3) + (ciffer_9*2) + (ciffer_10*1));
check_af_cpr = check_af_cpr /11;
if(tæller2 == 0 )
System.out.println("Det indtastede cpr-nummer er valideret!");
else
System.out.println("Det indtastede cpr-nummer er ukorrekt!");
}
}
