1 00:00:00,000 --> 00:00:00,820 2 00:00:00,820 --> 00:00:02,560 >> Zamyla تشان: دعونا التحقق من الائتمان الخاصة بك. 3 00:00:02,560 --> 00:00:06,360 في هذه المشكلة، ونحن سوف مطالبة المستخدم للحصول على مدخلات من رقم بطاقة الائتمان. 4 00:00:06,360 --> 00:00:10,090 ثم سنقوم بتشغيل أن بطاقة الائتمان عدد لمعرفة ما اذا كان صالح. 5 00:00:10,090 --> 00:00:13,430 إذا كان الأمر كذلك، فإننا سوف طباعة الشركة أن أن بطاقة الائتمان ينتمي إليها. 6 00:00:13,430 --> 00:00:17,520 خلاف ذلك، ونحن سوف نقول للمستخدم أن تلك البطاقة غير صالحة. 7 00:00:17,520 --> 00:00:20,210 >> دعونا الحق في القفز مع المطالبة إدخال المستخدم. 8 00:00:20,210 --> 00:00:23,080 رقم بطاقة الائتمان نوع البيانات long_long، 9 00:00:23,080 --> 00:00:27,190 وبالتالي فإن وظيفة مكتبة CS50 سيكون get_long_long مفيدة للغاية. 10 00:00:27,190 --> 00:00:30,690 ولكن هذه الوظيفة يضمن أن على مدخلات المستخدم أي عدد صحيح. 11 00:00:30,690 --> 00:00:34,730 لذلك فإن أي الأعداد الصحيحة الموجبة، سلبية الأعداد الصحيحة، أو الصفر هو كل شيء على ما يرام. 12 00:00:34,730 --> 00:00:37,560 ذلك متروك لكم لمزيد من تحقق أم لا 13 00:00:37,560 --> 00:00:41,770 أعطانا المستخدم صالحة رقم بطاقة الائتمان نوع. 14 00:00:41,770 --> 00:00:44,560 >> الآن أن لدينا بطاقة الائتمان عدد من المستخدمين، ثم 15 00:00:44,560 --> 00:00:46,580 نحن بحاجة لحساب الاختباري. 16 00:00:46,580 --> 00:00:49,780 حتى اختبارية بطاقة الائتمان وتحسب على النحو التالي. 17 00:00:49,780 --> 00:00:54,370 بدءا من الثاني إلى الرقم الأخير، ضربنا كل أرقام الآخرين من خلال 2. 18 00:00:54,370 --> 00:00:57,060 ثم نضيف تلك الأرقام منتجات "معا. 19 00:00:57,060 --> 00:01:00,140 ومنذ ذلك أضفنا مجموع الأرقام التي 20 00:01:00,140 --> 00:01:03,780 لم مضروبا 2 إلى أن المبلغ السابق الذي قمنا بحساب. 21 00:01:03,780 --> 00:01:08,480 وأخيرا، إذا انتهى هذا العدد في 0، ثم عدد صحيح. 22 00:01:08,480 --> 00:01:11,760 >> دعنا نذهب من خلال مثال وتأخذ هذه الخطوة خطوة. 23 00:01:11,760 --> 00:01:14,930 حتى خطوتنا الأولى هي أن تبدأ من الثانية إلى الرقم الأخير 24 00:01:14,930 --> 00:01:18,080 وتتضاعف كل أرقام الآخرين من خلال اثنين. 25 00:01:18,080 --> 00:01:22,240 الآن، إذا كنت تخزين بطاقة الائتمان رقم في متغير يسمى عدد CC، 26 00:01:22,240 --> 00:01:26,060 ثم الشعيب أنه بحلول 10 سوف تعطيني الرقم الأخير للغاية. 27 00:01:26,060 --> 00:01:28,910 فكيف يمكن لك الوصول الثاني إلى الرقم الأخير؟ 28 00:01:28,910 --> 00:01:32,030 >> حسنا، مرة واحدة لقد الوصول الثاني إلى الرقم الأخير، 29 00:01:32,030 --> 00:01:35,790 ثم سنقوم تكرار خلال ضرب كل رقم الآخرين من خلال 2. 30 00:01:35,790 --> 00:01:38,620 مرة واحدة لدينا ذلك، ثم سوف نأخذ هذه المنتجات 31 00:01:38,620 --> 00:01:41,350 وإضافة أرقام تلك المنتجات "معا. 32 00:01:41,350 --> 00:01:43,830 حتى هنا لا بد لي حيدة الأرقام، لذلك هذا هو على ما يرام. 33 00:01:43,830 --> 00:01:47,480 ولكن بعد ذلك مرة واحدة أحصل على تقريري الأخير number-- 7 مضروبا 2-- 34 00:01:47,480 --> 00:01:52,080 أود أن أضيف 1 و 4 لتعطيني 27. 35 00:01:52,080 --> 00:01:55,980 من هناك، ونضيف أن product-- 27-- إلى مجموع الأرقام التي 36 00:01:55,980 --> 00:01:57,790 لم مضروبا 2. 37 00:01:57,790 --> 00:02:01,070 >> حتى هنا لقد أبرزت جميع من هذه الأرقام باللون البرتقالي. 38 00:02:01,070 --> 00:02:04,900 وبمجرد أن إضافة تلك الأرقام، ثم نحصل على عدد اختباري النهائي. 39 00:02:04,900 --> 00:02:09,120 لذلك نحن التحقق من صحة ذلك بجعل تأكد من أن الرقم الأخير هو 0. 40 00:02:09,120 --> 00:02:12,635 إذا لم الاختباري ينتهي في 0، ثم رقم بطاقة الائتمان 41 00:02:12,635 --> 00:02:14,400 غير صحيح بالتأكيد. 42 00:02:14,400 --> 00:02:17,840 خلاف ذلك، دعنا نذهب إلى تحقق معرفات شركة 43 00:02:17,840 --> 00:02:19,870 ورقم بطاقة الائتمان طول. 44 00:02:19,870 --> 00:02:21,830 >> لقد قدمت قائمة ثلاث شركات، 45 00:02:21,830 --> 00:02:25,940 جنبا إلى جنب مع ذلك، فإن عدد من الأعداد الصحيحة أن أرقام بطاقات الائتمان الخاصة بهم لها. 46 00:02:25,940 --> 00:02:29,630 ثم رقمين الأولى التي قد تبدأ هذه البطاقات مع. 47 00:02:29,630 --> 00:02:34,070 ذلك متروك لكم لتعقب أول رقمين من بطاقة الائتمان 48 00:02:34,070 --> 00:02:37,620 وعدد من الأعداد الصحيحة في تلك البطاقة. 49 00:02:37,620 --> 00:02:40,110 و مع ذلك، كنت قد الانتهاء من المشكلة. 50 00:02:40,110 --> 00:02:44,210 اسمي Zamyla، وكان هذا الائتمان. 51 00:02:44,210 --> 00:02:45,859