T.C KİMLİK NO ALGORİTMASI
Bir müşteriden inatla gelen doğrulama isteği üzerine T.C. kimlik no'sunun rakamsal olarak "kesinlikle" doğru olmadan formun validate etmemesi için ufak bir araştıma sonucunda şunu buldum.
TC Kimlik numaraları 11 basamaktan oluşmaktadır. İlk 9 basamak arasında kurulan bir algoritma bize 10. basmağı, ilk 10 basamak arasında kurulan algoritma ise bize 11. basamağı verir.
* 11 hanelidir.
* Her hanesi rakamsal değer içerir.
* İlk hane 0 olamaz.
* 1. 3. 5. 7. ve 9. hanelerin toplamının 7 katından, 2. 4. 6. ve 8. hanelerin toplamı çıkartıldığında, elde edilen sonucun 10'a bölümünden kalan, yani Mod10'u bize 10. haneyi verir.
* 1. 2. 3. 4. 5. 6. 7. 8. 9. ve 10. hanelerin toplamından elde edilen sonucun 10'a bölümünden kalan, yani Mod10'u bize 11. haneyi verir.
Birkaç link ötesinde de şu kodlara rastladım
C#
|
|
VB
|
|
VB kodlarını kullanmak istedim ancak rakamları string olarak algılamak gibi garip bir hata ile karşılaştım. zaten yukarıda alıntı olarak belirttiğim doğrulama kurallarından farklı hata mesajları almak istediğimden VB kod üzerinde oynamalar yaparak şu hale getirdim. TcDogrulaV2 ve isNumeric(js) fonksiyonlarını kullanarak olumlu sonuç almış bulunmaktayım.
|
|
Arada ismi geçti bari atlamayayım dedim.
|
|
- 604 okunma




martinamca
Re: T.C KİMLİK NO ALGORİTMASI
Şu kodu görünce Guido'nun ruhuna iki kuluvallah bir elham okuyasım geldi.
protezdiyot
Re: T.C KİMLİK NO ALGORİTMASI