PR2-Testate/QualifierTeil2/KIchatgpt/prompt4.txt

42 lines
1.7 KiB
Plaintext

ich: schreibe eine methode zur Validierung einer 16-stellige Visa Kreditkartennummer nach Luhn-Algorithmus
KI: Hier ist eine Lösung, um die Methode zur Eingabe und Überprüfung der 16-stelligen Kreditkartennummer basierend auf
dem Luhn-Algorithmus in deiner Parkhaus-Software zu implementieren:
// Methode zur Überprüfung der 16-stelligen VISA-Kreditkartennummer
public static boolean pruefeKreditkartenNummer(String kreditkartenNummer) {
if (kreditkartenNummer.length() != 16 || !kreditkartenNummer.matches("\\d+")) {
return false; // Überprüft, ob die Nummer 16-stellig ist und nur Ziffern enthält
}
int sum = 0;
boolean alternate = false;
// Luhn-Algorithmus von rechts nach links anwenden
for (int i = kreditkartenNummer.length() - 1; i >= 0; i--) {
int n = Integer.parseInt(kreditkartenNummer.substring(i, i + 1));
if (alternate) {
n *= 2;
if (n > 9) {
n -= 9; // Wenn das Ergebnis größer als 9 ist, subtrahiere 9
}
}
sum += n;
alternate = !alternate;
}
// Wenn die Summe durch 10 teilbar ist, ist die Kreditkartennummer gültig
return (sum % 10 == 0);
}
public static void main(String[] args) {
// Beispiel für eine gültige 16-stellige VISA-Kreditkartennummer
String kreditkartenNummer = "4539148803436467";
if (pruefeKreditkartenNummer(kreditkartenNummer)) {
System.out.println("Die Kreditkartennummer ist gültig.");
} else {
System.out.println("Die Kreditkartennummer ist ungültig.");
}
}