User Image TC Kimlik Kontrol 8/21/2017 11:44:38 AM

  public bool TcKimlikKontrol(string tckimlik)
        {
            bool durum = true;

            if (tckimlik.Length != 11 || tckimlik.Substring(0, 1) == "0")
            {
                durum = false;
            }

            int ilk10hane = 0, sayac = 0, ilk10hanekalan = 0, carpilacakdegerler = 0, toplanacakdegerler = 0, carpimtoplamsonucu = 0;
            foreach (char item in tckimlik)
            {
                if (!char.IsNumber(item))
                {
                    durum = false;
                    return false;
                }
                else
                {
                    sayac++;
                    if (sayac < 11)
                    {
                        if (sayac == 1 || sayac == 3 || sayac == 5 || sayac == 7 || sayac == 9)
                        {
                            carpilacakdegerler += Convert.ToInt32(item.ToString());
                        }
                        else if (sayac != 10)
                        {
                            toplanacakdegerler += Convert.ToInt32(item.ToString());
                        }
                        else
                        {
                            carpimtoplamsonucu = (carpilacakdegerler * 7) - toplanacakdegerler;
                            int sonuc = (carpimtoplamsonucu % 10);
                            //sonuc negatifse yanlis mod aliyor. 
                            if (sonuc < 0)
                                sonuc += 10;
                            if (!(Convert.ToInt32(item.ToString()) == sonuc))
                            {
                                durum = false;
                                return durum;
                            }
                        }

                        ilk10hane += Convert.ToInt32(item.ToString());
                    }
                    else
                    {

                        ilk10hanekalan = ilk10hane % 10;
                        int sonuc = (ilk10hanekalan % 10);

                        //sonuc negatifse yanlis mod aliyor. 
                        if (sonuc < 0)
                            sonuc += 10;
                        if (!(Convert.ToInt32(item.ToString()) == sonuc))

                        {
                            durum = false;
                            return durum;
                        }

                    }

                }
            }

            return durum;
        }


app-mynotepad.com

Share note