روب Bowden: ہیلو، میں روب ہوں. اور میں تم پر الزام عائد کر رہے ہیں امید ہے کہ کریڈٹ کے لئے. ہم کیا کرنے کی ضرورت ہے تاکہ سب سے پہلی چیز کریڈٹ کارڈ کی درخواست ہے صارف کی طرف سے بڑی تعداد ہے. یہاں، ہم getLongLong استعمال کر رہے ہیں. آپ یہ بھی ہے GetString استعمال کیا جاتا ہے، لیکن کر سکتے ہیں اس صورت میں، آپ کو چیک کرنے کی ضرورت چاہتے ہیں کوئی غیر عددی تھے سٹرنگ میں حروف. تو ہم getLongLong استعمال کریں گے. تم سے کچھ استعمال نہیں کر سکتے یاد رکھیں کہ میں GetInt کی طرح، تعداد کے بعد ہو جائے گا ایک عدد صحیح میں فٹ ہونے کے لئے بہت بڑا. ہم اس تعداد ہے ایک بار، ہم اس دیر لوپ کو یہاں دیکھ کر. تو یہ دیر لوپ پر عمل پیرا ہے Luhn الگورتھم ہے کہ آپ pset رپورٹ میں دیکھ. اور یہ اصل میں جا رہا ہے تھوڑا سا ہوشیار ہو. تو pset رپورٹ میں، نوٹس ایک اور دو الگ الگ ہیں اقدامات. ہم سب سے پہلے پورے کریڈٹ کارڈ پر جانا تعداد، ہر دوسرے کے لئے تلاش کردار دوسرے سے شروع آخری کردار، اور ان ضرب اور تمام ہندسے انہوں نے مزید کہا. پھر اس کے بعد، ہم میں شامل دیگر ہندسوں کے تمام. تو بجائے دو میں ان لوگوں کے کرنے کے الگ الگ اقدامات، ہم جمع کرنے کے لئے جا رہے ہیں ان پر ایک iteration میں پورے کریڈٹ کارڈ نمبر. یہاں، ہم int رائج عددی برابر دیکھ کریڈٹ کارڈ نمبر، MOD 10. کریڈٹ کارڈ نمبر کیا ہے MOD 10 کر رہی ہو؟ یہ ہمارے آخری ہندسوں دے رہی ہے پوری تعداد میں. تو یاد ہے کہ ہم نے تقسیم کیا تو 10 کی طرف سے کی تعداد، تو باقی کہ آخری ہندسوں جو کچھ بھی ہو جائے گا. 23، 10 سے تقسیم باقی 3 ہو جائے گا. تو آخری ہندسوں، اب یہاں، ہم دیکھتے ہیں ہم 2 کی طرف سے گزشتہ پر شاخ رہے ہیں. تو کیا ہم گزشتہ کا استعمال کرتے ہوئے جا رہے ہیں 2 کی طرف سے کے لئے کے درمیان فرق ہے "ہر دوسرے نمبر سے ایک سے دوسری عددی "کی تعداد. 2 کی طرف سے گزشتہ طور پر شروع کرنے کے لئے جا رہا ہے جھوٹے، آخری ہندسوں کے بعد سے نہیں ہونا چاہئے کی طرف سے غور کیا جائے گا آخری ہندسوں دوسری. تو لوپ کے لئے اس کے آخر میں، ہم ہم اس کو تبدیل کرنے جا رہے ہیں دیکھتے ہیں کہ سچ جھوٹ سے. کے لئے لوپ کے اگلے iteration پر، جب تک سچ سمجھا جا رہا ہے ہم کو تبدیل آخر کب تک، سچ کی طرف سے باطل کے لئے اس. پھر ہم نے تیسرے پر ہو گا، کیونکہ میں سے ایک نہیں ہے جو آخری ہندسوں، ہم 2 کی طرف سے ضرب ہے کہ ہندسے. ہم ان میں سے ایک پر ہو تو اگر ہم 2 کی طرف سے ضرب کرنا چاہتے ہیں ہندسے، ہم اپنے حیض کے لئے اضافہ کر رہے ہیں کو دیکھنے کے. اور یہاں، ہم استعمال کر رہے ہیں تہرا آپریٹر ایک بار پھر تھوڑا سا ہوشیار ہو. تو رائج عددی تو، کم 5 ہے تو ہم صرف رائج عددی اوقات 2 کر سکتے ہیں. اتنا آسان ہے. اسے 1 ہے، تو ہم 2 شامل کرنا چاہتے ہیں. یہ 2 ہے تو، ہم 4 شامل کرنا چاہتے ہیں. یہ 4 ہے تو، ہم 8 شامل کرنا چاہتے ہیں. تو کیا 5 کے بارے میں خاص بات ہے؟ ٹھیک ہے، 5 بار 2 10 ہے. اور pset رپورٹ سے یاد ہے ہم ہندسے شامل کرنا چاہتے ہیں تعداد اوقات 2، اور نہیں تعداد اوقات 2 خود. تو اگر اصل تعداد 7، 7 مرتبہ 2 14 ہے. ہم 1 کے علاوہ 4 شامل کرنا چاہتے ہیں نمبر پر، نہیں 14. تو یہاں، تعداد 5 یا اس سے زیادہ ہے تو، کیا ہم کر رہے ہیں رائج عددی ہے اوقات 2 مائنس 9. اور تم اس کے بارے میں لگتا ہے کہ اگر، 5 بار 2 10 ہے. اور اس طرح ہم، 1 اضافہ کر رہے ہیں 10 مائنس 9 ہے. اور 6 مرتبہ 2 12 ہے. تو ہم، 3 اضافہ کر رہے ہیں جس میں 12 مائنس ہے 9. اور یہ کہ تمام کے لئے کام کرتا ہے. تو ہے کہ ہم نے اضافہ کر رہے ہیں کیا ہے ہمارے حیض کے لئے. اور یہ کسی اور مرحلہ ہینڈلنگ کیا ہے صرف ہے جو Luhn الگورتھم، دو ایسا نہیں ہے تو عددی انہوں نے مزید کہا ہر دوسرے ہندسے میں سے ایک. تو ایک بار ہم اس کو مدنظر رکھتے ہوئے کیا جاتا ہے، ہے کہ پہلے دو حروف کے ٹریک کریڈٹ کارڈ نمبر، پہلے دو ہم آخر میں جا رہے ہیں ہندسے، توثیق کرنے کے لئے یہاں نیچے استعمال کرنے کے لئے چاہتے ہیں، ٹھیک ہے، ایک ویزا شروع کرنے کے لئے ہے اس کے ساتھ، اور ایک امریکن ایکسپریس ضروریات اس کے ساتھ شروع، اور اسی طرح کی. پر آخر میں، ہم کریڈٹ کارڈ کرنا تعداد کریڈٹ کارڈ کے برابر ہے 10 نمبر کی طرف سے تقسیم. ہم کیوں ایسا کرتے ہیں؟ ٹھیک ہے، ہم صرف آخری ہندسوں سنبھالا. 10 کی طرف سے تقسیم منتقل کرے گا پوری تعداد پر. واپس جب ہم لوپ تو اب، ہم ہینڈلنگ کیا جا رہا آخری ہندسوں دوسری. ہم ایک بار پھر یہ مارا تو، ہم جا رہے ہیں آخری دوسری کاٹ عددی، لوپ واپس، اور ہینڈل تیسری جب تک، اس پر عددی آخری، اور تعداد جس نقطہ پر، 0 تک پہنچ جاتا ہے ہم جبکہ لوپ سے باہر توڑ. ہم نے بھی کریڈٹ کے ٹریک رکھ رہے کارڈ نمبر کی لمبائی، ہے کے بعد سے چاہے وہ تمیز کرنے کے لئے اہم ایک درست کریڈٹ کارڈ نمبر. تو اب، ایک بار ہم حساب ہے حیض، ہم اس بات کا تعین کر سکتے ہیں کہ آیا ایک درست کارڈ ہے. حیض MOD 10 حصہ ہے Luhn کی الگورتھم کی. حیض MOD 10 ریٹرن کچھ تو غیر صفر، تو یہ سچ ہے، واپس آ جائیں گے جس صورت میں، تعداد غلط ہونا ضروری ہے. دوسری صورت میں، اگر حیض MOD 10 0 ہے، تو ہم جاری رکھ سکتے ہیں. یہ، اور بڑا کہہ رہا ہے تو سب سے پہلے تو دو ہندسے، AMEX 1 کے برابر ہیں جہاں یہاں، ہم دیکھتے ہیں کہ AMEX 1، رپورٹ کے مطابق، 34 ہے. اور ہم بھی اس کا موازنہ کریں گے 37 ہے جو AMEX 2، پر. اور کریڈٹ کارڈ نمبر لمبائی ہے متوقع امریکن ایکسپریس کے برابر کارڈ کی حد کے، تو ہم کر سکتے ہیں امریکن ایکسپریس پرنٹ. ہم ویزے کے ساتھ اسی طرح کی ایک بات کروں گا. پہلے دو ہندسے زیادہ ہو جائے کرنے کی ضرورت ہے یا 40 کے برابر، یا کم سے کم زیادہ یا 49 کے برابر. وہ درست ویزا کارڈ کی نمائندگی کرتے ہیں. اور لمبائی کے برابر ہو جائے کرنے کی ضرورت ہے ویزا لمبائی 1 یا ویزا کی لمبائی 2. اور لمبائی یا تو ہونا چاہیے 13 یا 16 ہندسے طویل. اور آخر میں ماسٹر کارڈ کے ساتھ، یہ ہے ویزا کے لئے اسی طرح، کہ پہلے دو ہندسے ایک خاص میں کرنے کی ضرورت رینج، اور لمبائی ضروری ہے بالکل 16 ہندسے ہو. لہذا ان مقدمات کی کسی بھی، تو میں پکڑ تو پہلی صورت میں، ہم AMEX پرنٹ کریں گے. اس کیس کی ڈگری حاصل کی، تو ہم ویزا پرنٹ کریں گے. اس کیس کی ڈگری حاصل کی تو ہم کریں گے ماسٹر پرنٹ. لیکن ان میں سے کوئی بھی فائز ہیں، یہاں تک کہ حیض صحیح تھا، تو ہم اب بھی غلط پرنٹ. اس کا ایک نہیں ہے کیونکہ کارڈ کی ان اقسام. میرا نام روب ہے، اور مجھے امید ہے کہ آپ مل گیا کریڈٹ دلچسپ.