IMEI Numarasının Son Hanesini Bulma

IMEI Numarasının Son Hanesini Bulma

symbazz symbazz - #1
14555378479106.jpg


IMEI Numarasının Son Hanesini Bulma

15 rakamlı olan imei numarasının son hanesi kontrol amaçlıdır ve Luhn Algoritmasına göre belirlenir.


Örnek olarak: 36184503753229? şeklinde bir imei oluşturalım ve son haneyi ? şeklinde ifade edelim.

İlk haneden başlayıp birer atlayarak toplayalım.

3+1+4+0+7+3+2=20

Geri kalan sayıları 2 ile çarpıp basamak değerlerini toplayalım.

6*2=12 -> 1+2=(3) + 8*2=16 -> 1+6=(7) + 5*2=10 -> 1+0=(1) + 3*2=(6) + 5*2=10 -> 1+0=(1) + 2*2=(4) + 9*2=18 -> 1+8=(9) = 31

20+31=51


Luhn algoritmasına göre sayının 10'a bölünmesi gerektiği için son rakamımız 60-51=9 olmalıdır. bunun sonucunda imei numarası 361845037532299 olarak belirlenir.
Sonuç iki haneli yani 10 çıkarsa, sonuç 0 olur.

Bir yazılımda kullanmak isterseniz eğer:

Kod:
<%
'-------------------------------------------------------------------------------------------------Luhn
Function LuhnAlgoritma(KontrolEdilecek)
For i = 2 To Len(KontrolEdilecek) Step 2
    CiftKarakter = CiftKarakter & (CInt(Mid(KontrolEdilecek, i, 1)) * 2)
    ' Response.Write "CiftKarakter:"&Mid(KontrolEdilecek, i, 1)&"x2("&CiftKarakter&")<hr>"
Next

For i = 1 To Len(CiftKarakter)
    Toplam = Toplam + CInt(Mid(CiftKarakter, i, 1))
Next

For i = 1 To Len(KontrolEdilecek) Step 2
    Toplam = Toplam + CInt(Mid(KontrolEdilecek, i, 1))
    ' Response.Write "TekKarakter:"&Mid(KontrolEdilecek, i, 1)&"<hr>"
Next

LuhnAlgoritma = KontrolEdilecek&" - "&(10 - (Toplam Mod 10))

End Function
'-------------------------------------------------------------------------------------------------KARAKTER TAMAMLA
Function Fn_Karakter(Veri,Karakter,Boyut)
' Response.Write Fn_Karakter("253","0","6") 'Çıktı:000253
    If len(Veri) < Boyut Then
        Fn_Karakter = String(Boyut-Len(Veri),""&Karakter&"") & Veri
    Else
        Fn_Karakter = Veri
    End If
End Function
'-------------------------------------------------------------------------------------------------ÜRETME
tac="35000001"
SonImei=0

For ix=SonImei+1 To SonImei+2000
    ImeiSira=Fn_Karakter(ix,"0",6)
    Response.Write LuhnAlgoritma(tac&ImeiSira)
    Response.Write "<hr>"
Next

%>

============================================

Ülkemizde imei değiştirmek Yasal Değildir. Suç teşkil eder. Forumumuzda verilen bu tür bilgiler , bilgi amacıyla verilmiştir. Sorumluluk size aittir.
voltran2008 voltran2008 - #2
Hocam tarifin mükemmel ama daha basit yöntem var:

adnanmirsad56 adnanmirsad56 - #3
Hocam tarifin mükemmel ama daha basit yöntem var:

bilimsel açıklamasını yapmış
symbazz symbazz - #4
Hocam tarifin mükemmel ama daha basit yöntem var:


Verdiğiniz siteyi biliyorum. Ama bu bilgiyi vermemdeki amaç, imei nedir, nereden türetilir, bu sondaki rakam ne için vardır ve nasıl bulunur du. En son verdiğim kodda, yazılım hazırlayan arkadaşlarımıza ışık olması içindir.
URL: https://www.mobilkulup.com//konu/imei-numarasinin-son-hanesini-bulma.5644/