introduction
Dans ce défi, votre tâche consiste à générer le code ISBN-10 pour les livres étant donné son code ISBN-13, en supposant qu'un tel code existe. Un tel code ISBN-13 se compose de plusieurs parties séparées par -:
978-GG-PPPP-TTT-C
Les lettres G(groupe), P(éditeur), T(titre) et C(somme de contrôle) représentent toutes un chiffre. Aux fins de ce défi, le regroupement et le calcul de C(voir ce défi ) ne sont pas intéressants et nous allons supprimer tous les tirets pour simplifier cette tâche.
Un numéro ISBN-10 a une disposition très similaire:
GG-PPPP-TTT-c
Les lettres G, Pet Tsont les mêmes que pour l'ISBN à 13 chiffres, cependantc différentes (et sont calculées à l'aide d'un algorithme différent). Le chiffre cest choisi de manière à ce que l'équivalence suivante soit respectée (chiffres dans l'ordre):
10*G + 9*G + 8*P + … + 3*T + 2*T + 1*c = 0 (mod 11)
Exemple
Considérons le numéro ISBN 9780345391803: pour obtenir son code ISBN-10 correspondant, il suffit de supprimer le début 978et la somme de contrôle3 qui donne 034539180.
Ensuite, nous devons calculer la nouvelle somme de contrôle:
10*0 + 9*3 + 8*4 + 7*5 + 6*3 + 5*9 + 4*1 + 3*8 + 2*0 = 185
Le prochain nombre divisible par 11est 187, donc la nouvelle somme de contrôle est2 et donc le code ISBN-10 résultant 0345391802.
Règles
- Votre entrée aura toujours un numéro ISBN-10 correspondant (c'est-à-dire qu'elle est exactement de 13 chiffres et commence par
978) - L'entrée ne doit pas nécessairement être un ISBN-13 valide (par exemple.
9780000000002) - Vous êtes assuré que l'ISBN résultant ne se terminera pas
X - Vous pouvez prendre l'entrée comme un entier ou une chaîne (avec ou sans tirets), mais une liste de chiffres précalculés n'est pas autorisée
- Votre sortie doit être un numéro ISBN-10 valide (avec ou sans tirets)
- Votre sortie peut être un entier ou une chaîne (là encore aucune liste de chiffres)
Cas de test
9780000000002 -> 0000000000
9780201882957 -> 0201882957
9781420951301 -> 1420951300
9780452284234 -> 0452284236
9781292101767 -> 1292101768
9780345391803 -> 0345391802
Notez les zéros non significatifs!


0-684-84328-5et99921-58-10-7, la première partie (0et99921respectivement) est le groupe d'inscription, la deuxième partie est l'éditeur, etc.