परिचय
इस चुनौती में आपका कार्य आईएसबीएन -१३ कोड दिए गए पुस्तकों के लिए आईएसबीएन -१० कोड तैयार करना है, यह मानते हुए कि ऐसा कोड मौजूद है। इस तरह के आईएसबीएन -13 कोड में कई भागों को अलग किया जाता है -:
978-GG-PPPP-TTT-C
अक्षर G(समूह), P(प्रकाशक), T(शीर्षक) और C(चेकसम) सभी एक अंक के लिए खड़े होते हैं। इस चुनौती के उद्देश्य के लिए समूहीकरण और C( इस चुनौती को देखें ) की गणना दिलचस्प नहीं है और हम इस कार्य को सरल बनाने के लिए सभी हाइफ़न को छोड़ देंगे।
एक आईएसबीएन -10 नंबर में एक समान लेआउट है:
GG-PPPP-TTT-c
अक्षर G, Pऔर T13 अंकों के आईएसबीएन के लिए समान हैं, हालांकि cअलग है (और एक अलग एल्गोरिथ्म का उपयोग करके गणना की जाती है)। अंक cको इस तरह से चुना जाता है जैसे कि निम्नलिखित समतुल्य धारण (अंक क्रम में):
10*G + 9*G + 8*P + … + 3*T + 2*T + 1*c = 0 (mod 11)
उदाहरण
आइए हम आईएसबीएन संख्या पर विचार करें 9780345391803: अपने संबंधित आईएसबीएन -10 कोड को प्राप्त करने के लिए हम बस अग्रणी 978और चेकसम को छोड़ 3देते हैं 034539180।
अगला हमें नई चेकसम गणना करने की आवश्यकता है:
10*0 + 9*3 + 8*4 + 7*5 + 6*3 + 5*9 + 4*1 + 3*8 + 2*0 = 185
अगला नंबर विभाज्य 11है 187, इसलिए नया चेकसम है 2और इस प्रकार आईएसबीएन -10 कोड है 0345391802।
नियम
- आपके इनपुट में हमेशा आईएसबीएन -10 नंबर होगा (यानी यह ठीक 13 अंकों का लंबा है और इसके साथ शुरू होता है
978) - इनपुट के लिए जरूरी नहीं है कि वह एक मान्य आईएसबीएन -13 (उदाहरण के लिए
9780000000002) हो । - आपको गारंटी है कि परिणामी आईएसबीएन के साथ समाप्त नहीं होगा
X - आप एक पूर्णांक या स्ट्रिंग के रूप में (हाइफ़न के साथ या बिना) इनपुट ले सकते हैं, हालांकि अंकों की एक पूर्व-सूचीबद्ध सूची की अनुमति नहीं है
- आपका आउटपुट एक मान्य ISBN-10 नंबर होना चाहिए (हाइफ़न के साथ या बिना)
- आपका आउटपुट पूर्णांक या स्ट्रिंग (फिर से अंकों की कोई सूची नहीं) हो सकता है
परीक्षण के मामलों
9780000000002 -> 0000000000
9780201882957 -> 0201882957
9781420951301 -> 1420951300
9780452284234 -> 0452284236
9781292101767 -> 1292101768
9780345391803 -> 0345391802
प्रमुख शून्य पर ध्यान दें!


0-684-84328-5और99921-58-10-7, पहला भाग (0और99921क्रमशः) पंजीकरण समूह है, दूसरा भाग प्रकाशक है, और इसी तरह।