Luhn algoritması, kredi kartı numaraları, IMEI numaraları ve diğer kimlik doğrulama numaralarının geçerliliğini kontrol etmek için kullanılan bir doğrulama algoritmasıdır. Algoritma, 1954 yılında Hans Peter Luhn tarafından geliştirilmiştir ve basit bir mod 10 kontrolü yaparak hataları tespit etmeye yardımcı olur.
Luhn Algoritması Nasıl Çalışır?
Luhn algoritması, verilen bir sayı dizisinin doğruluğunu kontrol etmek için aşağıdaki adımları takip eder:
- Sağdan sola doğru ilerleyin ve her ikinci rakamı belirleyin.
- Bu rakamları ikiyle çarpın. Eğer çarpım 9'dan büyükse, rakamları toplayın.
- Diğer rakamları değiştirmeden bırakın.
- Tüm rakamları toplayın.
- Toplam 10'un katıysa, numara geçerlidir; aksi takdirde geçersizdir.
Python Nedir? Python Programlama ve Python Dersleri
Python, yorumlanabilir, interaktif ve nesne odaklı bir programlama dilidir. İlk defa Guido van Rossum’un 1991 yılında geliştirmeye başladığı Python dili bugün kullandığımız birçok servisin meydana getirilmesi aşamasında kullanılan...
Luhn Algoritması Kullanım Alanları
Luhn algoritması genellikle aşağıdaki alanlarda kullanılır:
- Kredi ve banka kartları: Visa, MasterCard, American Express gibi kart numaralarının doğrulanmasında.
- IMEI numaraları: Mobil cihazların benzersiz kimlik numaralarının kontrol edilmesinde.
- Kimlik ve hesap numaraları: Bazı devlet kimlik numaraları ve müşteri hesap doğrulamaları.
Luhn Algoritması Python ile Nasıl Uygulanır?
def luhn_check(card_number):
digits = [int(digit) for digit in str(card_number)]
checksum = 0
for i in range(len(digits) - 2, -1, -2):
doubled = digits[i] * 2
if doubled > 9:
doubled = doubled - 9
digits[i] = doubled
checksum = sum(digits)
return checksum % 10 == 0
print(luhn_check("4539148803436467")) # Çıktı: False (Geçersiz)
print(luhn_check("79927398713")) # Çıktı: True (Geçerli)
