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