Avatar billede mr.gessle Nybegynder
08. marts 2000 - 19:17 Der er 4 kommentarer

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!");
                                   
                                   
                       
                           
                   
    }
    }
     
     
   
Avatar billede gnarf Nybegynder
09. marts 2000 - 09:30 #1
Prøv dog at gøre det selv, og spørg så hvis du løber ind i problemer....

Det er jo ren slave arbejde at bede andre om det.
Avatar billede marleneholm Nybegynder
12. marts 2000 - 10:26 #2
Lav en cpr.nr. classe med værdierne
int dag
int mdr
int år
int sidste

og lav dine check på et object af denne type.
Avatar billede mbj@adr.dk Nybegynder
12. marts 2000 - 22:30 #3
Lav dog selv dine lektior til mandag!!

Ellers godt program uden opdeling i klasser.
Avatar billede jake_2 Nybegynder
20. september 2000 - 12:20 #4
Ja gerne jeg tager 560 kr / time lol
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester