C#nedir?com Homepage
Forum Home Forum Home > C# / .NET > C#
  New Posts New Posts RSS Feed - TC No Doğrulama
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

TC No Doğrulama

 Post Reply Post Reply
   

Author
Message
maytas View Drop Down
Newbie
Newbie


Joined: 09 Eylül 2017
Location: Bursa
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote maytas Quote  Post ReplyReply Direct Link To This Post Topic: TC No Doğrulama
    Posted: 09 Eylül 2017 at 22:26
Merhaba.
Aşağıda TC No doğrulaması yapan yeni hazırladığım kodları paylaşıyorum.
Belki ihtiyacı olan istifade eder.

        private void tcNoDogrula_Click(object sender, EventArgs e)
        {
            char ilkRakam = maskedTextBox1.Text[0];
            char sonRakam = maskedTextBox1.Text[10];
            if (ilkRakam == '0' | sonRakam % 2 != 0)
            {
                MessageBox.Show("TC No hatalıdır");
            }
            else
            {
                string ilk9Karakter = maskedTextBox1.Text.Substring(0, 9);
                string rakam10 = maskedTextBox1.Text.Substring(9, 1);
                string rakam11 = maskedTextBox1.Text.Substring(10, 1);

                int toplam1 = 0;
                for (int i = 0; i < ilk9Karakter.Length; i += 2)
                {
                    toplam1 += Convert.ToByte(maskedTextBox1.Text.ToString());
                }

                int toplam2 = 0;
                for (int i = 1; i < ilk9Karakter.Length; i += 2)
                {
                    toplam2 += Convert.ToByte(maskedTextBox1.Text.ToString());
                }

                int sayi10 = ((toplam1 * 7) - toplam2) % 10;
                int sayi11 = (toplam1 + toplam2 + sayi10) % 10;
                if (rakam10 != sayi10.ToString() | rakam11 != sayi11.ToString())
                {
                    MessageBox.Show("TC No hatalıdır.");
                }
                else
                {
                    MessageBox.Show("TC No Doğrulandı.");
                }
            }
        }
Back to Top
evrimsel View Drop Down
Newbie
Newbie


Joined: 16 Aralık 2017
Status: Offline
Points: 1
Post Options Post Options   Thanks (0) Thanks(0)   Quote evrimsel Quote  Post ReplyReply Direct Link To This Post Posted: 16 Aralık 2017 at 12:45
Teşekkürler.
Back to Top
iyilik52 View Drop Down
Newbie
Newbie


Joined: 11 Haziran 2017
Status: Offline
Points: 4
Post Options Post Options   Thanks (0) Thanks(0)   Quote iyilik52 Quote  Post ReplyReply Direct Link To This Post Posted: 02 Ocak 2018 at 18:41
Merhaba, Kod için teşekkür ederiz. Denediniz mi hata veriyor bende? 
Tc numarasını 11 haneliden fazla yada az girerseniz uyarı vermiyor?
11 haneli girdiğinizde de "Değer işaretsiz bir bayt için çok büyük ya da çok küçüktü." hatası alıyorum.
İlk sorun giderilebilir ama ikinci hatanın sebebi byte kullanılması mı acaba?
Back to Top
kral06ankara View Drop Down
Senior Member
Senior Member


Joined: 06 Mart 2013
Status: Offline
Points: 464
Post Options Post Options   Thanks (0) Thanks(0)   Quote kral06ankara Quote  Post ReplyReply Direct Link To This Post Posted: 06 Ocak 2018 at 22:29
 en başa bu şekilde bir kontrol koyarak uzunlugu kontrol edebilirsin 

if (tcNo.Length != 11)    


girdiğin değerler rakam değilse byte ile ilgili hata alabilirsin.

Back to Top
 Post Reply Post Reply
  Share Topic   
   


Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 11.01
Copyright ©2001-2014 Web Wiz Ltd.