U3F1ZWV6ZTExODI2MjMyOTc4OTg1X0ZyZWU3NDYxMDEwMzg3NTA5

شرح خوارزمية لون Luhn Algorithm

في هذه المقالة سنتعرف معاً على آلية عمل الخوارزمية من خلال توضيح مثال تطبيقي على رقم بطاقة ائتمان، بالتأكيد رقم بطاقة الائتمان في بطاقة الدفع الإلكتروني الحقيقية هو صحيح 100% لأنها بطاقة حقيقية لكن فيما لو كنت تريد عمل توليد لرقم بطاقة معين كيف يمكنك التأكد أن الرقم صحيح ؟ أسهل طريقة هي استخدام خوارزمية لون Luhn Algorithm. سوف نقوم بالتجربة على رقم البطاقة التالي: 5560593098175339 1- قم بتعداد رقم البطاقة من 0 إلى 15 كما هو موضح بالصورة التعداد يسمى index او رقم الموقع الخاص بكل رقم ونبدأ من اليسار إلى اليمين 2- قم بجمع الأرقام التي يكون index الخاص بها odd (مفرد) مثلاً اول موقع index الخاص به (0) والصفر هو even (زوجي) لكن الرقم الذي يليه index الخاص به هو 1 وهو odd لذلك نقوم بجمعه وهكذا نمر على الأرقام جميعها المجموع لهذه الارقام هو 41. 3- قم بضرب الرقم الذي يكون index الخاص به even (زوجي) برقم 2 واذا كان اقل من 10 نبقيه كما هو لكن اذا كان يساوي او اكبر من 10 ننقص منه 9 ومن ثم نجمع النواتج المجموع لهذه الارقام هو 29. 4- نقوم بجمع المجموعين 41 + 29 = 70 هنا نسأل سؤال، هل الناتج يقبل القسمة على 10؟ ماذا يعني يقبل القسمة على 10؟ يعني في حال قمنا بأستخدام القسمة الطويلة (Long Division) سيكون الباقي (Reminder) يساوي صفر وفي هذه الحالة يكون رقم البطاقة صحيح 100%، أما في حال كان الناتج لا يقبل القسمة على 10 لن يكون رقم البطاقة صحيح.



تعليقات
تعليقان (2)
إرسال تعليق

إرسال تعليق

الاسمبريد إلكترونيرسالة