You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.6 KiB
Java

package com.company;
import java.util.Scanner;
public class EinkaufswagenNummer {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.println("Bitte geben sie die Kennnummer ein: ");
String wagenNummer = scanner.nextLine().replace("-", "");
while (wagenNummer.length() != 4 ){
System.out.println("Die Nummer muss 4 Stellen lang sein. Bitte erneut eingeben");
wagenNummer = scanner.nextLine().replace("-", "");
}
boolean korrektheit = prüfungNummer(wagenNummer);
ausgabe(korrektheit);
}
public static boolean prüfungNummer(String nummer){
int gewichtung = 0;
for (int i = 0; i < nummer.length() - 1; i++) {
char cur = nummer.charAt(i);
gewichtung += Character.getNumericValue(cur) * (i % 2 == 0 ? 1 : 1);
}
int PrüfziffEntfernen = nummer.charAt(nummer.length() - 1);
int PrüfzifferBerechnet = Character.getNumericValue(PrüfziffEntfernen);
int prüfziffer = 10 - gewichtung % 10;
boolean korrektheit = false;
if (PrüfzifferBerechnet != prüfziffer){
korrektheit = false;
} else {
korrektheit = true;
}
return(korrektheit);
}
public static void ausgabe(boolean korrektheit){
if (korrektheit != true) {
System.out.println("Die Kennnummer ist nicht korrekt oder ungültig!");
} else {
System.out.println("Kennnummer is gültig!");
}
}
}