A.3 Validité d'un code ISBN
La plupart des livres sont publiés avec un code les identifiant :
il s'agit du code ISBN pour International Standard Book Number. Ce
code est composé d'entiers compris entre 0 et 9. On utilise la
lettre X pour représenter l'entier 10. De plus, des tirets
sont introduit dans le code afin d'en faciliter la lecture sans pour
autant avoir d'autre signification.
Seul les 9 premiers chiffres d'un code ISBN sont utilisés pour
identifier le livre. Le 10ième caractère sert à contrôler
la validité du code (comme la clef d'un RIB ou les deux derniers
chiffres de votre numéro de sécurité sociale).
L'algorithme pour tester la validité du code ISBN est simple. On
calcule à partir de ce dernier deux sommes s1 et s2. Le
code ISBN est correct si la valeur finale de s2 est divisible
par 11.
On expose l'algorithme au travers de l'exemple du code ISBN
0-13-162959-X. Considérons tout d'abord le calcul de s1.
| chiffres du code ISBN |
0 |
1 |
3 |
1 |
6 |
2 |
9 |
5 |
9 |
10(X) |
| s1 |
0 |
1 |
4 |
5 |
11 |
13 |
22 |
27 |
36 |
46 |
Le calcul de s2 est fait en sommant les sommes partielles de s1
| chiffres du code ISBN |
0 |
1 |
3 |
1 |
6 |
2 |
9 |
5 |
9 |
10(X) |
| s1 |
0 |
1 |
4 |
5 |
11 |
13 |
22 |
27 |
36 |
46 |
| s2 |
0 |
1 |
5 |
10 |
21 |
34 |
56 |
83 |
119 |
165 |
Pour finir, on constate que 165 est le produit de 15 par 11.
Notre code ISBN est donc valide.
Exercice A.0 --- Question.
Construisez un programme C qui permet de saisir au clavier un code
ISBN et qui teste s'il est correct.
Pour tout commentaire : Alexandre Sedoglavic.