package com.company.pruefnummern; import java.util.Scanner; public class PayBack_LOL { public static void main(String[] args) { Eingabe(); } public static void Eingabe(){ Scanner scanner = new Scanner(System.in); System.out.println("Bitte geben sie die PayBack Nummer ein: z.B. 3083423103187694"); String wagenNummer = scanner.nextLine().replace("-", ""); while (wagenNummer.length() != 16) { System.out.println("Die Nummer muss 16 Stellen lang sein. Bitte erneut eingeben"); wagenNummer = scanner.nextLine().replace("-", ""); } boolean korrektheit = pruefungNummer(wagenNummer); ausgabe(korrektheit); } public static boolean pruefungNummer(String PayBackNummer){ String[] prifaex = {"079", "306", "307", "310", "376", "024", "503", "504", "002", "006", "007", "032", "391", "423", "424", "383", "505", "506", "384"}; String[] unternehmen = {"Amazon", "DEA", "DEA", "DEA", "DM-Drogerie", "Galeria Kaufhof", "Lufthansa", "Lufthansa", "real", "real", "real", "real", "real", "Visa", "Visa", "AOL", "Obi", "Obi", "Palmers"}; for(int i = 0; i < prifaex.length; i++ ){ if(PayBackNummer.substring(6, 9).equals(prifaex[i])){ System.out.println("Die PayPack Nummer gehört zu dem Unternehmen " + unternehmen[i]); } } int quersumme = 0; for (int i = 0; i < PayBackNummer.length() - 1; i++) { char stelle = PayBackNummer.charAt(i); int gewichtung = Character.getNumericValue(stelle) * (i % 2 == 0 ? 2 : 1); int quer, h, rest; quer = 0; h = gewichtung; while (gewichtung > 0) { rest = gewichtung % 10; quer = quer + rest; gewichtung = gewichtung / 10; } quersumme += quer; } int PayBackNummerOhnePruefziffer = PayBackNummer.charAt(PayBackNummer.length() - 1); int pruefziffer = Character.getNumericValue(PayBackNummerOhnePruefziffer); int PruefzifferBerechnet = 10 - quersumme % 10; System.out.println("Die Pruefziffer lautet: " + PruefzifferBerechnet); boolean korrektheit = false; if (PruefzifferBerechnet != pruefziffer){ korrektheit = false; } else { korrektheit = true; } return(korrektheit); } public static void ausgabe(boolean korrektheit){ Scanner scanner = new Scanner(System.in); if (korrektheit != true) { System.out.println("Die Kennnummer ist nicht korrekt oder ungültig!"); } else { System.out.println("Kennnummer is gültig!"); } System.out.println("Wollen Sie eine weitere Nummer pruefen? Wenn ja bitte mit y bestätigen. Wenn nich kann das Programm mit N beendet werden."); String weiter = scanner.nextLine().replace("-", ""); if(weiter.equals("y")) { Eingabe(); } } }