9 Eylül 2014 Salı

C# ile TC Kimlik Kontrolu

Merhaba arkadaşlar bugün sizlere çok fazla noktada işimize yarayabilecek olan C#’da TC Kimlik Kontrolü nasıl yapılır sorusuna yanıt verecek metodu paylaşacağım.
*Aşağıda metodun kullanım şeklini göreceğiz.
1//"11111111111" TC kimlik numarası hatalı olduğu için false dönecektir.
2bool result = TCNoKontrolu("11111111111");
3 
4//"10000000146" TC kimlik numarası doğru olduğu için true dönecektir. (TC Kimlik numarası olarak her yönden örnek olabilecek Ulu Önder Mustafa Kemal Atatürk'ün vatandaşlık numarası alınmıştır.)
5bool result = TCNoKontrolu("10000000146");


*TCNoKontrolu isimli metodumuz aşağıdaki gibidir.
01public static bool TCNoKontrolu(string TCNo)
02{
03    int[] TC = new int[11];
04    for (int i = 0; i < 11; i++)
05    {
06        string a = TCNo[i].ToString();
07        TC[i] = Convert.ToInt32(a);
08    }
09 
10    int tekler = 0;
11    int ciftler = 0;
12 
13    for (int k = 0; k < 9; k++)
14    {
15        if (k % 2 == 0)
16            tekler += TC[k];
17        else if (k % 2 != 0)
18            ciftler += TC[k];
19    }
20 
21    int t1 = (tekler * 3) + ciftler;
22    int c1 = (10 - (t1 % 10)) % 10;
23    int t2 = c1 + ciftler;
24    int t3 = (t2 * 3) + tekler;
25    int c2 = (10 - (t3 % 10)) % 10;
26 
27    if (c1 == TC[9] && c2 == TC[10])
28        return true;
29    else
30        return false;
31}


Bir başka makalede görüşmek dileğiyle…

Hiç yorum yok:

Yorum Gönder