Guest User

Untitled

a guest
Jun 22nd, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.01 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3. using System.Text.RegularExpressions;
  4.  
  5. public static class Util {
  6. public static Boolean TCKimlikNumarasıGeçerliMi (String tcKimlikNo) {
  7. // Toplam 11 basamaklı olmalı, ilk basamak 0 olmamalı.
  8. if (!Regex.IsMatch(tcKimlikNo, @"^[1-9]\d{10}$")) {
  9. return false;
  10. }
  11.  
  12. var tümBasamaklar = tcKimlikNo
  13. .ToCharArray()
  14. .Select(c => c - '0')
  15. .ToArray();
  16. var çiftlerinToplamı = 0;
  17. var teklerinToplamı = tümBasamaklar[0];
  18.  
  19. for (var i = 1; i < 9; i += 2) {
  20. çiftlerinToplamı += tümBasamaklar[i];
  21. teklerinToplamı += tümBasamaklar[i + 1];
  22. }
  23.  
  24. var onuncuBasamak = (teklerinToplamı * 7 - çiftlerinToplamı) % 10;
  25.  
  26. if (onuncuBasamak != tümBasamaklar[9]) {
  27. return false;
  28. }
  29.  
  30. var onBirinciBasamak = (çiftlerinToplamı + teklerinToplamı + onuncuBasamak) % 10;
  31.  
  32. return onBirinciBasamak == tümBasamaklar[10];
  33. }
  34. }
Add Comment
Please, Sign In to add comment