Codes barres et division euclidienne

Bonjour
Je me place au niveau de la spé maths en TS.

On note $a_1,\ldots,a_{13}$ les 13 chiffres d'un code-barres, la clé $a_{13}$ est déterminée de façon à ce que l'entier $S=3\times (a_2+a_4+\cdots+a_{12})+a_1+a_3+\cdots+a_{13}$ soit un multiple de $10$.
On note $c=a_{13}$ et $r$ le reste de la division euclidienne de $S-c$ par 10.
Montrer que lorsque $r\neq 0$ alors l'entier $10-r$ est une clé qui convient.

Éléments de réponse.
On suppose que $r\neq 0$, i.e. que $S-c$ n'est pas un multiple de $10$.
Comme $r$ est un entier compris entre $1$ et $9$ alors $10-r$ est un chiffre différent de $0$.
On peut donc poser $c=10-r$. Vérifions alors que $c$ convient, i.e. que $S$ est un multiple de $10$.
On a par définition de $r$ : $S-c=10q+r$ donc $S=10q+r+c=10q+r+10-r=10(q+1)$.
$S$ est donc bien un multiple de 10, donc la clé $c=10-r$ convient.

Ce qui me pose problème c'est de poser $c=10-r$ puisque $r$ est défini à partir de $c$.
J'ai l'impression que la seule chose que je sais c'est que $c=S-10q-r$.
Qu'est-ce qui m'autorise à poser $c=10-r$ ?
Suis-je clair dans ce qui me dérange ? Je me sens complètement embrouillé.
Merci pour vos éclaircissements.

Réponses

  • Quel est l’objectif de l’exercice ?
    Est-ce de trouver la clé en fonction des 12 autres chiffres ?
    Si c’est ça, aucun problème.
  • L'objectif c'est de travailler sur la division euclidienne.
    Dans cette question, c'est la clé définie comme un nombre tel que S est un multiple de 10.
    Et r comme la division euclidienne de S-c par 10.
    Au moment où l'on pose : "r est différent de 0", la clé c est déjà définie ? Comment peut-on poser par la suite que c=10-r ?
  • Voilà comment je vois les choses.
    Le code barre est défini par 12 chiffres.
    Un treizième est une clé (pour vérifier une bonne saisie, etc.).

    L’exercice propose de trouver la clé avec les contraintes données.
    C’est ce que j’ai compris.

    Une remarque :
    C’est un exercice qui semble compliqué mais visuellement c’est simple.
    On fait un calcul avec les 12 chiffres (n’importe lequel d’ailleurs car on ne se sert par de l’application utilisée), ça donne un résultat E entier.
    Si ce E n’est pas multiple de 10, alors le chiffre des unités, noté U, dans l’écriture décimale de E n’est pas 0.
    On choisit la clé suivante : 10-U. Aussi appelé « complément à 10 ».
  • OK. r et c sont des inconnues liées par la relation S-c=10q+r avec r compris entre 0 inclus et 10 exclus.
    Dire que r n'est pas zéro c'est dire que S-c n'est pas un multiple de 10 et donc que c n'est pas zéro.
    On décide de poser une nouvelle relation entre r et c qui est c=10-r. On regarde que cela ne contredit pas la condition "S est un multiple de 10", autrement dit on regarde que 10-r est une valeur possible pour c.
    Mais finalement c est inconnue donc r est inconnue.
  • a priori à ce stade on ne sait pas que c est unique.
  • On suppose S-c connue, c inconnue et par voie de conséquence r inconnue.
  • Oui.
    On connaît S, c’est une fonction des douze chiffres.
    On en déduit r (chiffre des unités de S) puis c (complément à 10).

    r et c sont parfaitement déterminés par S.
  • Étape suivante, écrire un script en Python qui lit et dessine des codes à barre (EAN-13 ici).
    Algebraic symbols are used when you do not know what you are talking about.
            -- Schnoebelen, Philippe
Connectez-vous ou Inscrivez-vous pour répondre.