>> Zamyla चान: चलो आपके क्रेडिट की जाँच करें।
इस समस्या में, हम उपयोगकर्ता का संकेत देंगे एक क्रेडिट कार्ड नंबर का एक इनपुट के लिए।
तो फिर हम है कि क्रेडिट कार्ड चलने देंगे नंबर अगर यह वैध है देखने के लिए।
यदि हां, तो हम कंपनी प्रिंट हूँ वह यह है कि क्रेडिट कार्ड के अंतर्गत आता है।
अन्यथा, हम उपयोगकर्ता बताता हूँ वह यह है कि कार्ड अमान्य है।
>> के साथ में सही कूद उपयोगकर्ता इनपुट के लिए उत्साह।
क्रेडिट कार्ड नंबर है डेटा प्रकार long_long की,
इसलिए CS50 पुस्तकालय समारोह get_long_long काफी उपयोगी हो जाएगा।
लेकिन इस समारोह में कहा कि यह सुनिश्चित करता है उपयोगकर्ता किसी भी पूर्णांक आदानों।
इसलिए किसी भी सकारात्मक पूर्णांक, नकारात्मक पूर्णांकों, या शून्य सब ठीक है।
आप पर निर्भर है तो करने के लिए आगे चाहे या नहीं मान्य
उपयोगकर्ता हमें एक वैध दिया है क्रेडिट कार्ड प्रकार संख्या।
>> हम एक क्रेडिट कार्ड है कि अब उपयोगकर्ता से संख्या है, तो
हम checksum की गणना करने की जरूरत है।
तो क्रेडिट कार्ड checksums इस प्रकार के रूप में गणना कर रहे हैं।
पिछले अंक से पीछे नहीं से शुरू, हम 2 से हर दूसरे अंकों गुणा।
तो फिर हम उन जोड़ने 'उत्पादों की एक साथ अंक।
से है कि हम जोड़ने अंकों का योग है कि
कि करने के लिए 2 से गुणा नहीं कर रहे थे पिछले योग है कि हम गणना की थी।
अंत में, उस नंबर समाप्त हो जाती है, तो 0 में, उसके बाद नंबर मान्य है।
>> चलो एक उदाहरण के माध्यम से चलते हैं और कदम से यह कदम उठाना।
इसलिए हमारा पहला कदम शुरू करने के लिए है पिछले अंक से पीछे नहीं से
और दो से हर दूसरे अंकों गुणा।
अब, अगर मैं क्रेडिट कार्ड संग्रहीत एक चर बुलाया सीसी संख्या में संख्या,
तो 10 से modding कि होगा मुझे बहुत पिछले अंक दे।
तो आप कैसे उपयोग हो सकता है पिछले अंक से पीछे नहीं?
>> ठीक है, तो एक बार हम पहुँचा है पिछले अंक से पीछे नहीं,
फिर हम के माध्यम से पुनरावृति करेंगे 2 से हर दूसरे अंकों गुणा।
एक बार जब हम ऐसा है, तो है हम उन उत्पादों को ले जाएगा
और साथ में उन उत्पादों के अंकों को जोड़ने।
यहाँ तो मैं ही है अंक है, तो वह ठीक है।
लेकिन फिर एक बार मैं अपने पिछले करने के लिए मिलता है संख्या-7 2-- से गुणा
मैं 1 जोड़ सकते हैं और मुझे 4 27 देने के लिए।
वहाँ से, हम उस product-- जोड़ने 27-- अंकों का योग करने के लिए कि
2 से गुणा नहीं कर रहे थे।
>> तो यहाँ मैं सब पर प्रकाश डाला है नारंगी में उन लोगों की संख्या का।
एक बार जब हम उन अंकों को जोड़ने, तो हम अपने अंतिम checksum संख्या में मिलता है।
इसलिए हम इसे बनाने के द्वारा मान्य सुनिश्चित करें कि पिछले अंक 0 है।
checksum में खत्म नहीं होती हैं 0 है, तो क्रेडिट कार्ड नंबर
निश्चित रूप से अवैध है।
अन्यथा, चलो पर जाना है कंपनी पहचानकर्ता जाँच
और क्रेडिट कार्ड नंबर लंबाई।
>> हम एक सूची प्रदान की है तीन कंपनियों में से,
इसके साथ ही, पूर्णांकों की संख्या अपने क्रेडिट कार्ड नंबर है।
फिर पहले दो अंक है कि उन कार्ड के साथ शुरू हो सकता है।
तो आप पर निर्भर का ट्रैक रखने के लिए क्रेडिट कार्ड के पहले दो अंक
और उस कार्ड में पूर्णांकों की संख्या।
और उस के साथ, आप है समस्या समाप्त हो गया।
मेरा नाम Zamyla है, और इस क्रेडिट था।