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 हम checksum की गणना करने की जरूरत है। 16 00:00:46,580 --> 00:00:49,780 तो क्रेडिट कार्ड checksums इस प्रकार के रूप में गणना कर रहे हैं। 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 अब, अगर मैं क्रेडिट कार्ड संग्रहीत एक चर बुलाया सीसी संख्या में संख्या, 26 00:01:22,240 --> 00:01:26,060 तो 10 से modding कि होगा मुझे बहुत पिछले अंक दे। 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 लेकिन फिर एक बार मैं अपने पिछले करने के लिए मिलता है संख्या-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 एक बार जब हम उन अंकों को जोड़ने, तो हम अपने अंतिम checksum संख्या में मिलता है। 39 00:02:04,900 --> 00:02:09,120 इसलिए हम इसे बनाने के द्वारा मान्य सुनिश्चित करें कि पिछले अंक 0 है। 40 00:02:09,120 --> 00:02:12,635 checksum में खत्म नहीं होती हैं 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