Les symboles du code universel des produits (UPC) se trouvent sur la plupart des produits dans les épiceries et les commerces de détail. Le symbole UPC est un code à 12 chiffres identifiant le fabricant d’un produit et le produit lui-même (Figure 3.6.1). Les 11 premiers chiffres contiennent des informations sur le produit ; le douzième chiffre est utilisé pour la détection d’erreurs. Si \(d_1 d_2 \cdots d_{12}\) est un numéro UPC valide, alors
Le système de détection d’erreurs UPC peut détecter la plupart des erreurs de transposition ; c’est-à-dire qu’il peut déterminer si deux chiffres ont été interchangés. Montrez que l’erreur de transposition 0-05000-30042-6 n’est pas détectée. Trouvez une erreur de transposition qui est détectée. Pouvez-vous trouver une règle générale pour les types d’erreurs de transposition qui peuvent être détectées ?
Supposons que \((d_1, d_2, \ldots,
d_k ) \cdot (w_1, w_2, \ldots,
w_k ) \equiv 0 \pmod{ n}\) soit un système de détection d’erreurs pour le numéro d’identification à \(k\) chiffres \(d_1 d_2 \cdots d_k\text{,}\) où \(0 \leq d_i \lt n\text{.}\) Montrez que toutes les erreurs sur un seul chiffre sont détectées si et seulement si \(\gcd( w_i, n ) = 1\) pour \(1 \leq i \leq k\text{.}\)
Soit \((d_1, d_2, \ldots, d_k ) \cdot (w_1, w_2, \ldots,
w_k ) \equiv 0 \pmod{ n}\) un système de détection d’erreurs pour le numéro d’identification à \(k\) chiffres \(d_1 d_2 \cdots d_k\text{,}\) où \(0 \leq d_i \lt n\text{.}\) Montrez que toutes les erreurs de transposition de deux chiffres \(d_i\) et \(d_j\) sont détectées si et seulement si \(\gcd( w_i - w_j, n ) = 1\) pour \(i\) et \(j\) entre \(1\) et \(k\text{.}\)
Chaque livre possède un code ISBN (numéro international normalisé du livre). C’est un code à 10 chiffres indiquant l’éditeur et le titre du livre. Le dixième chiffre est un chiffre de contrôle satisfaisant
Un problème est que \(d_{10}\) pourrait devoir valoir 10 pour que le produit scalaire soit nul ; dans ce cas, 11 chiffres seraient nécessaires pour que ce système fonctionne. C’est pourquoi le caractère X est utilisé pour le onzième chiffre. Ainsi, l’ISBN 3-540-96035-X est un code ISBN valide.
L’ISBN 0-534-91500-0 est-il un code ISBN valide ? Et l’ISBN 0-534-91700-0 et l’ISBN 0-534-19500-0 ?
Un éditeur a des maisons en Allemagne et aux États-Unis. Son préfixe allemand est 3-540. Si son préfixe américain sera 0-abc, trouvez abc de sorte que le reste du code ISBN soit le même pour un livre imprimé en Allemagne et aux États-Unis. Dans le système de codage ISBN, le premier chiffre identifie la langue ; l’allemand est 3 et l’anglais est 0. Le groupe de chiffres suivant identifie l’éditeur, et le dernier groupe identifie le livre spécifique.