Örnek: TC Kimlik No olarak 25252525345 alalım
ilk 10 rakamı toplayalım; 2+5+2+5+2+5+2+5+3+4 = 35
35 sayısının birler basamağındaki rakam : 5
Tc kimlik numarasının son rakamı : 5
Kullanmanız gereken fonksiyon ise:
public static Boolean TcKimlikKontrol(String kimlikNo)
{
Tc = kimlikNo;
int no = 0;
no = no + Convert.ToInt32(Tc.Substring(0, 1));
no = no + Convert.ToInt32(Tc.Substring(1, 1));
no = no + Convert.ToInt32(Tc.Substring(2, 1));
no = no + Convert.ToInt32(Tc.Substring(3, 1));
no = no + Convert.ToInt32(Tc.Substring(4, 1));
no = no + Convert.ToInt32(Tc.Substring(5, 1));
no = no + Convert.ToInt32(Tc.Substring(6, 1));
no = no + Convert.ToInt32(Tc.Substring(7, 1));
no = no + Convert.ToInt32(Tc.Substring(8, 1));
no = no + Convert.ToInt32(Tc.Substring(9, 1));
string son = Convert.ToString(no).Substring(1, 1);
if (son == Tc.Substring(10, 1))
{return true;}
else{return false;}
}
Örnek kullanım: TcKimlikKontrol(25252525345) // true dönerse doğru, false dönerse yanlıştır (Algoritmayı kullanmadan önce, kullanıcının %10 luk bir oranla bu rakamı tutturabilme ihtimalini göz önüne almayı unutmayınız (11 haneli bir rakam girdiğini varsayarak))Not: Fonksiyonu çok eskiden yazmıştım,kodda düzenleme yapmadım. TC kimlik numarasının elemanlarını bir array'e atıp, döngü ile toplama işlemini gerçekleştirebilirsiniz.