Pkt 1: det ville være lettere, hvis man kunne se hvor du definere cprCiffer og kontrolCiffer .
Pkt 2: formoder at du vil lave modulus kontrol på cprnummeret, men mig bekendt er moduluscheck droppet, for at give plads til flere mulige cprnumre uden at udvide antallet af ciffre..
Ja, det er korrekt at der er uddelt numre hvor modoluschecket er ugyldigt.
Hvis du skriver hele din kodestump (klip ud så det kan køre, der skal eksempelvis være din initialisering af cprCiffer og kontrolCiffer med...) og kommer med et relevant stacktrace så skal jeg nok fixe det...
int sum = 0; // den her "sum" bliver aldrig brugt for(int i = 0; i < 10; i++) { Sum += (int)(kontrolCiffer[i]*cprCiffer[i]); // den her "Sum" bliver aldrig nulstillet (anden gang du kalder erOk giver Sum dobbelt resultat osv.) }
hvad sker der hvis du ændrer dine arrays til int`?
public class CprKontrol { private String cprNumer = ""; private int[] kontrolCiffer = {4,3,2,7,6,5,4,3,2,1}; private int[] cprCiffer = new int[10]; private int Sum = 0;
public static void main(String[] args) throws IOException { System.out.println("Indtast Cpr på formen xxxxxx-xxxx: "); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String cprNumber = br.readLine(); CprKontrol cprKontrol = new CprKontrol(cprNumber);
if (cprKontrol.erOk()) { System.out.println("Det var et gyldigt cpr numer"); } else { System.out.println("Hmm, - Husk at taste et gyldigt cpr numer"); } } }
public static void main(String[] args) throws IOException { System.out.println("Indtast Cpr på formen xxxxxx-xxxx: "); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String cprNumber = br.readLine(); CprKontrol cprKontrol = new CprKontrol(cprNumber);
if (cprKontrol.erOk()) { System.out.println("Det var et gyldigt cpr numer"); } else { System.out.println("Hmm, - Husk at taste et gyldigt cpr numer"); }
if (cprKontrol.erOk()) { System.out.println("Andet forsøg gik godt"); } else { System.out.println("Andet forsøg fejlede"); }
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.