TC Kimlik No Algoritması İle Akraba Bulmak

TC Kimlik No Algoritması İle Akraba Bulmak

Haziran 8, 2023

Okuma süresi: 3 dakika

Merhaba dostlar.

Bu günkü yazımızda sizlere TC kimlik numarası doğrulama algoritması ve akraba bulma algoritması hakkında bilgi vermeye çalışacağım.

Bilindiği üzere TC kimlik numaraları rasgele veya sırayla oluşan bir numara değil aksine bir algoritma sonucu ortaya çıkan sayılardır.

  • TC Kimlik numaraları 0 ile başlayamaz.
  • TC Kimlik numarasının son hanesi tek sayı olamaz. (1,3,5,7,9)
  • TC Kimlik numarasının 9. hanesi cinsiyeti verir. Eğer 9. hane tek ise Erkek çift ise Kadın'dır
  • TC Kimlik numarasının ilk 9 hanesi ile yapılan işlem sonucu 10. haneyi verir.
  • TC Kimlik numarasının ilk 10 hanesi ile yapılan işlem sonucu 11. haneyi verir.

Şimdi gelelim bu algoritmaya;

  • 1-3-5-7-9. hanelerin toplamının 7 katından 2-4-6-8. hanelerin toplamını çıkardığımızda bulduğumuz sonucun mod 10'u (10'a bölümünden kalan) bize 10. haneyi verir.
  • 1-2-3-4-5-6-7-8-9-10. Hanelerin toplamının mod 10'u (10'a bölümünden kalan) bize 11. haneyi verir.

Örnek olarak 63913430920 TC kimlik numarasını ele alalım.

6-3-9-1-3-4-3-0-9-2-0 

Örneğimizde algoritmaya göre bakalım,

6+9+3+3+9 =30x7=210

3+1+4+0=8

210-8=202

202(mod10)=2 (10. hanemizi bulduk),

şimdi sıra 11. hanede 

6+3+9+1+3+4+3+0+9+2 = 40

40(mod10)=0 (11. hanemizide bulduk.

Aşağıdaki resimde biraz daha anlaşılır oldu sanırım.

Şimdi gelelim akrabalık algoritmasına;

Sizden bir önceki kimlik numarasını bulmak için (sizinle aynı soyadı taşıyan) ilk 9 haneyi alıyoruz ve bu sayıdan 29999 sayısını çıkarıyoruz. elimizde 9 hanesi olan bu numara ile de 10. ve 11. haneyi zaten algoritma yardımıyla bulabiliyorduk.

Örnek verecek olursak;

63913430920 numaradaki kırmızı alanı alıyoruz,

639134309 - 29999 = 639104310

639104310 bu numarayı kullanarak 10. ve 11. haneyi hesapladığımızda 

63910431074 numarası bizden bir önceki (aynı soyadı taşıyan) kimlik numarasıdır.

Bir sonrakini bulmak için ise 29999 u çıkarmak yerine topluyoruz ve

63916430886 numarasını elde ediyoruz.

Aşağıdaki alandan kimlik numaranızı girerek istediğiniz sayıda akrabanızın TC kimlik numarasını üretebilirsiniz.

Burada kullandığınız veriler hiç bir şekilde sunucu tarafında kullanılmıyor ve kaydedilmiyor. Anlık olarak javascript ile hesaplanıp ekrana basılıyor.