Como dissemos anteriormente, as ATIVIDADES DE ENSINO são atividades
curiosas para jovens e adultos que podem ser utilizadas em “feiras de
matemática”.
7.1 CÓDIGOS DE BARRA
Sempre que vamos fazer uma
compra encontramos um código de barras sendo utilizado nos produtos. O sistema
universal conhecido como UPC (Uniform Product Code) foi adotado nos Estados
Unidos e Canadá a partir de 1973. Consiste de uma seqüência de 12 dígitos,
representados por barras brancas e pretas alternadas, de espessura variável. O
padrão adotado hoje contém 13 dígitos. Os primeiros dois ou três dígitos são
utilizados para identificar o país onde o fabricante está registrado, que pode
não ser o país onde o artigo é produzido; os próximos quatro ou cinco dígitos
indicam o produtor e os cinco restantes identificam o artigo produzido.
Finalmente o último dígito é um dígito de controle.
O código de
barras de todos os produtos no Brasil começa com a seqüência 789, que é a que
identifica o país.

Um código de barras representa
uma sequência de números. Cada número corresponde um espaço de espessura fixa,
que associa uma seqüência de sete dígitos iguais a 0 ou 1. Por exemplo, a
seqüência 0110111, que encontramos acima representa o 8.
Como a máquina leitora
distingue a direita da esquerda, quando um artigo pode ser passado em uma ou
outra direção?
A resposta é
simples, o desenho de barras é totalmente simétrico para a máquina que o lê
usando um feixe de luz (scanner). Os dígitos são codificados de maneira
diferente quando estão do lado direito ou esquerdo do código de barras. Isto é
feito conforme a Tabela 9.1 abaixo:
Tabela 7.1
Dígito
|
Do lado esquerdo
|
Do lado direito
|
0
|
0001101
|
1110010
|
1
|
0011001
|
1100110
|
2
|
0010011
|
1101100
|
3
|
0111101
|
1000010
|
4
|
0100011
|
1011100
|
5
|
0110001
|
1001110
|
6
|
0101111
|
1010000
|
7
|
0111011
|
1000100
|
8
|
0110111
|
1001000
|
9
|
0001011
|
1110100
|
A codificação de
um número, à direita, se obtém da sua codificação à esquerda, trocando cada 0
por 1 e reciprocamente. Observamos que cada seqüência do lado esquerdo tem um
número ímpar de dígitos iguais a 1 e, conseqüentemente, cada uma das seqüências
que estão à direita tem um número par. Assim, verificando a paridade de cada
seqüência de sete dígitos, a máquina sabe imediatamente de que lado está lendo
o código.
O código de
barras de todos os produtos produzidos no Brasil começa com a seqüência 789,
que é a seqüência numérica que identifica o país.
Os quatro ou
cinco dígitos que restam até as barras centrais identificam o fabricante. Os
primeiros cinco dígitos do lado direito identificam o produto específico, desse
fabricante. O último dígito, chamado dígito de verificação, é adicionado no
final do processo de elaboração do código.No código ao lado o dígito de
verificação é o 2.

Nos sistemas com
dígito de verificação ou algarismo de teste, não se pretende que o erro seja
automaticamente corrigido, mas que a pessoa que é o operador da máquina,
perceba a ocorrência do erro e seja alertado da necessidade de reescrever o
número.
Como a máquina
detecta quando um operador apressado comete um erro de digitação?
A DETECÇÃO DE ERROS
Para compreender como funciona
o processo de detecção de erros precisamos entender, inicialmente, como se
atribui a cada produto, o dígito de verificação.
No código de
barras acima, temos a seqüência de dígitos 7 8 9 1 0 0 0 3 7 0 9 0 e o
dígito verificador 2 . Vamos supor que não sabemos que é o 2 e queremos
encontrá-lo. Para isso vamos denotá-lo por x.
Para facilitar a exposição,
escrevemos esta seqüência de treze dígitos como um “vetor”

Utilizamos um
“vetor” fixo, chamado vetor de pesos
:


Calcula-se,
assim o “produto escalar” dos vetores:




Agora o dígito de verificação x
se escolhe de tal forma que o “produto escalar” acima, que é igual a
seja múltiplo de 10.

Neste caso o
dígito x é igual a 2 porque
é múltiplo de 10.

De um modo
geral, escrevendo a seqüência:

e o “vetor” de pesos

calculando o “produto escalar” dos vetores



o dígito de verificação é escolhido de modo
que a soma acima seja múltiplo de dez.
Vejamos agora
como funciona a detecção de erros. Suponhamos que o código de barras 7 8 9 0
1 0 0 3 7 0 9 0 por um erro de digitação é transmitido como
. Ao fazer a verificação de leitura, o computador que recebeu a
informação faz o “produto escalar”
e obtém:




como o produto não é múltiplo de 10, o
computador avisa que foi cometido algum erro.
Responda:
1. Qual é o dígito verificador x do produto identificado por 978102713720-x
?
2. Se mais de um erro for cometido na digitação, o método ainda
funciona?
3. Se a escolha do dígito verificador x fosse feita simplesmente
de modo que

fosse múltiplo de 10, seria detectado algum
erro?
Um sistema universalmente adotado para a classificação de livros é o ISBN. Neste exemplo um livro recebeu o código ISBN 85-262-3245-2 uma seqüência de 10 dígitos e o dígito verificador é o 2. Agora o “vetor”


O “vetor” de
pesos no ISBN é
e a divisibilidade é por 11

Fazendo o
“produto escalar”
e obtemos:



o resultado é múltiplo de 11, não foi
cometido nenhum erro.
Responda:
Qual é o dígito
verificador x do livro identificado por ISBN 85-7312-135-x ?
Se você quer saber mais sobre o assunto,
acesse:
7.3 JOGO DE NIM
É um antigo jogo de palitos
jogado por duas pessoas.
Dispõe-se sobre
uma mesa 32 palitos de fósforo. Cada jogador na sua vez, pode retirar, no mínimo
1 e, no máximo, 4 palitos. Perde o jogador que retirar o último palito.
A pergunta é:
como vencer neste jogo?
Sugestão. Observar atentamente a
distribuição dos palitos no desenho abaixo.
![]() |