Вы находитесь на странице: 1из 52

Aritmética modular

Andreza C. Beezão Moreira

Universidade Federal de Lavras


GEX252- Matemática Discreta

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 1 / 31
Conteúdo

Nesta parte do curso, estudaremos:


Conjunto dos números inteiros módulo n: Zn ;
Vimos, brevemente, a definição da operação mod nas aulas sobre
relações entre conjuntos.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 2 / 31
Aritmética Modular

Introdução/Contextualização
Em alguns problemas o interesse se concentra no resto da divisão entre
dois números.
Como exemplo, considere a pergunta: Que horas serão daqui a 50 horas?

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 3 / 31
Aritmética Modular

Introdução/Contextualização
Em alguns problemas o interesse se concentra no resto da divisão entre
dois números.
Como exemplo, considere a pergunta: Que horas serão daqui a 50 horas?

Nesse caso, nosso interesse reside no resto da divisão entre 50 e 24.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 4 / 31
Aritmética Modular
Curiosidades

Figura: Fonte: https://pt.khanacademy.org/computing/computer-


science/cryptography/modarithmetic/a/what-is-modular-arithmetic
Andreza C. Beezão Moreira (Universidade Federal de Lavras
short GEX252-
title Matemática Discreta) 5 / 31
Aritmética Modular

Definição geral (teórica)


Dados um número inteiro m e um inteiro positivo n, definimos m mod n
como o menor número não-negativo r tal que

m=nq+r,

em que q é um número inteiro.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 6 / 31
Aritmética Modular

Exemplos
Quanto valem as expressões:

(i) 10 mod 7 e (ii) −10 mod 7?

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 7 / 31
Aritmética Modular

Exemplos
Quanto valem as expressões:

(i) 10 mod 7 e (ii) −10 mod 7?

Respostas
Colocando na fórmula m = nq + r , temos:

(i) q=1 e r=3 em 10 mod 7, logo 10 mod 7 = 3


e
(ii) q=-2 e r=4 em −10 mod 7, portanto −10 mod 7 = 4.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 8 / 31
Aritmética Modular
Muita usada para:
... indicar quando dois números inteiros possuem o mesmo resto em uma
dada divisão.

Dados a e b números inteiros e n um número inteiro positivo, então


dizemos que a é congruente a b módulo n se n divide a diferença a − b.

Em expressões, isso se traduz como:

a ≡ b( mod n) ⇔ a − b = qn, sendo q ∈ Z.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 9 / 31
Aritmética Modular
Muita usada para:
... indicar quando dois números inteiros possuem o mesmo resto em uma
dada divisão.

Dados a e b números inteiros e n um número inteiro positivo, então


dizemos que a é congruente a b módulo n se n divide a diferença a − b.

Em expressões, isso se traduz como:

a ≡ b( mod n) ⇔ a − b = qn, sendo q ∈ Z.

Notas:
Usaremos a notação a ≡ b( mod n) para indicar que a é congruente a
b módulo n ;
Também vale que: a ≡ b( mod m) ⇔ a mod m = b mod m.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 9 / 31
Aritmética Modular

Exemplos
Determine se 17 é congruente a 5 módulo 6 e se 24 e 14 são
congruentes ao módulo 6.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 10 / 31
Aritmética Modular

Exemplos
Determine se 17 é congruente a 5 módulo 6 e se 24 e 14 são
congruentes ao módulo 6.

Respostas
Como 6 divide 17 − 5 = 12, vale que 17 ≡ 5( mod 6).
Por outro lado, 6 não divide 24 − 14 = 10, então 24 6≡ 14( mod 6).

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 11 / 31
Aritmética Modular
Exemplo
Determine os números entre 1 e 100 que são congruentes a 6 módulo 13.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 12 / 31
Aritmética Modular
Exemplo
Determine os números entre 1 e 100 que são congruentes a 6 módulo 13.

Resposta
Seja 1 ≤ x ≤ 100 um número qualquer tal que x ≡ 6( mod 13). Pela
definição da operação mod, isso significa que:

13| (x − 6) ⇒

x − 6 = 13.k, para algum k ∈ Z ⇒


x = 13.k + 6, para este algum k ∈ Z.
Portanto, os números de 1 a 100 congruentes a 6 módulo 13 são:

6, 19, 32, 45, 58, 71, 84, 97.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 12 / 31
Aritmética Modular

Classes de congruência módulo n


Para um elemento a ∈ Z, definimos a classe de congruência de a como o
conjunto de todos os inteiros congruentes a a módulo n e a denotamos por
a.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 13 / 31
Aritmética Modular

Classes de congruência módulo n


Para um elemento a ∈ Z, definimos a classe de congruência de a como o
conjunto de todos os inteiros congruentes a a módulo n e a denotamos por
a.

Exemplos para n = 3
As classes de congruência de 0, 1 e 2 módulo n = 3 são os respectivos
conjuntos:

0 = {. . . , −9, −6, −3, 0, 3, 6, 9 . . .} → Forma geral: 3k


1 = {. . . , −8, −5, −2, 1, 4, 7, 10 . . .} → Forma geral: 3k + 1
2 = {. . . , −7, −4, −1, 2, 5, 8, 11 . . .} → Forma geral: 3k + 2

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 13 / 31
Aritmética Modular

Pergunta:
Quantas classes de congruência é possível construir quando n for
igual a:
i) 12?
ii) 35?
iii) k arbitrário?

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 14 / 31
Aritmética Modular

Pergunta:
Quantas classes de congruência é possível construir quando n for
igual a:
i) 12?
ii) 35?
iii) k arbitrário?

Resposta:
i) 12 classes: 0, 1, . . . , 11.
ii) 35 classes: 0, 1, . . . , 34.
iii) k classes: 0, 1, . . . , k − 1.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 14 / 31
Aritmética Modular

Exercício
Calcule
i) 21 mod 9
ii) 38 mod 9
iii) (21 + 38) mod 9
iv) (21 × 38) mod 9

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 15 / 31
Aritmética Modular

Propriedades: para facilitar nossa vida com o mod


Teorema: Sejam a, b, c, d, n, r ∈ Z, sendo n > 1 e r ≥ 1.
Se a ≡ b( mod n) e c ≡ d( mod n), então também valem:

(i) a + c ≡ b + d( mod n) [outra notação: a + c = b + d]


(ii) a − c ≡ b − d( mod n)
(iii) a × c ≡ b × d( mod n)
(iv) ar ≡ b r ( mod n)

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 16 / 31
Aritmética Modular

Exemplos
Vejamos como o teorema anterior facilita operações de soma, subtração,
multiplicação e potenciação em aritmética modular.
1) Como 7 ≡ 2( mod 5) e 11 ≡ 1( mod 5), então:

18 = 7 + 11 ≡ 2 + 1 = 3( mod 5) → 18 ≡ 3( mod 5)

77 = 7 × 11 ≡ 2 × 1 = 2( mod 5) → 77 ≡ 2( mod 5).

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 17 / 31
Aritmética Modular

Exemplos
Vejamos como o teorema anterior facilita operações de soma, subtração,
multiplicação e potenciação em aritmética modular.
1) Como 7 ≡ 2( mod 5) e 11 ≡ 1( mod 5), então:

18 = 7 + 11 ≡ 2 + 1 = 3( mod 5) → 18 ≡ 3( mod 5)

77 = 7 × 11 ≡ 2 × 1 = 2( mod 5) → 77 ≡ 2( mod 5).

2) Como 21 ≡ 3( mod 9) e 38 ≡ 2( mod 9), segue direto das


propriedades que:
21 + 38 ≡ 5( mod 9)
21 × 38 ≡ 6( mod 9).

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 17 / 31
Aritmética Modular
Exemplos - continuação
3) Prove que o número 3099 + 61100 é divisível por 31.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 18 / 31
Aritmética Modular
Exemplos - continuação
3) Prove que o número 3099 + 61100 é divisível por 31.
De fato: Sabemos que 30 ≡ −1( mod 31), portanto, pela propriedade (iv)
do Teorema, podemos concluir que 3099 ≡ (−1)99 ( mod 31), ou seja,
3099 ≡ −1( mod 31).

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 18 / 31
Aritmética Modular
Exemplos - continuação
3) Prove que o número 3099 + 61100 é divisível por 31.
De fato: Sabemos que 30 ≡ −1( mod 31), portanto, pela propriedade (iv)
do Teorema, podemos concluir que 3099 ≡ (−1)99 ( mod 31), ou seja,
3099 ≡ −1( mod 31).
De forma similar: como 61 ≡ −1( mod 31), concluímos também que
61100 ≡ (−1)100 ( mod 31), logo 61100 ≡ 1( mod 31).

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 18 / 31
Aritmética Modular
Exemplos - continuação
3) Prove que o número 3099 + 61100 é divisível por 31.
De fato: Sabemos que 30 ≡ −1( mod 31), portanto, pela propriedade (iv)
do Teorema, podemos concluir que 3099 ≡ (−1)99 ( mod 31), ou seja,
3099 ≡ −1( mod 31).
De forma similar: como 61 ≡ −1( mod 31), concluímos também que
61100 ≡ (−1)100 ( mod 31), logo 61100 ≡ 1( mod 31).
Assim, pela propriedade (i) do Teorema, temos:

3099 + 61100 ≡ (−1 + 1)( mod 31) ⇒ 3099 + 61100 ≡ 0( mod 31),

que nos mostra que 3099 + 61100 é divisível por 31.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 18 / 31
Aritmética Modular - Aplicações

I. Endereçamento de memória - Função Hasha


a
Pense no conteúdo de hash estudado em Estruturas de Dados e faça um
paralelo com a teoria do mod que estamos vendo aqui em Matemática Discreta.

O computador da faculdade mantém registros de todos os alunos.


Pergunta: Como endereçar os registros, a fim de facilitar a
recuperação de informações dos estudantes?

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 19 / 31
Aritmética Modular - Aplicações

I. Endereçamento de memória - Função Hasha


a
Pense no conteúdo de hash estudado em Estruturas de Dados e faça um
paralelo com a teoria do mod que estamos vendo aqui em Matemática Discreta.

O computador da faculdade mantém registros de todos os alunos.


Pergunta: Como endereçar os registros, a fim de facilitar a
recuperação de informações dos estudantes?
Resposta: Para acessar os registros, uma chave é necessária.
I Uma função h(k) mapeia uma posição de memória para um registro
que possui chave k.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 19 / 31
Aritmética Modular - Aplicações
I. Endereçamento de memória - Função Hash
Uma função comum para realizar essa tarefa pode ser

h(k) = k( mod n),

sendo n o número de posições de memória disponíveis.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 20 / 31
Aritmética Modular - Aplicações
I. Endereçamento de memória - Função Hash
Uma função comum para realizar essa tarefa pode ser

h(k) = k( mod n),

sendo n o número de posições de memória disponíveis.


Exemplo: Supondo que n = 111, teremos

h(064212848) = 064212848( mod 111) = 14,

logo as informações do aluno 064212848 estarão na posição 14 da


memória.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 20 / 31
Aritmética Modular - Aplicações
I. Endereçamento de memória - Função Hash
Uma função comum para realizar essa tarefa pode ser

h(k) = k( mod n),

sendo n o número de posições de memória disponíveis.


Exemplo: Supondo que n = 111, teremos

h(064212848) = 064212848( mod 111) = 14,

logo as informações do aluno 064212848 estarão na posição 14 da


memória.
Perguntas: Essa função é boa o suficiente? Garante que não haverá
sobreposição de informações? Como você usaria conceitos de
Estrutura de Dados para resolver esse possível problema de
sobreposição?

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 20 / 31
Aritmética Modular - Aplicações

II. Geração de números aleatórios


É possível gerar uma sequência de números pseudos-aleatórios {xm }, com
0 ≤ xm < n para todo m, através da fórmula

xm+1 = (a · xm + c) mod n,

em que 2 ≤ a < n, 0 ≤ c < n e 0 ≤ x0 < n.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 21 / 31
Aritmética Modular - Aplicações
II. Geração de números aleatórios - Exercício
Calcule os números abaixo, tomando n = 9, a = 7, c = 4 e x0 =3.

x1 x2 x3
x4 x5 x6
x7 x8 x9
x10 x11 x12

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 22 / 31
Aritmética Modular - Aplicações
II. Geração de números aleatórios - Exercício
Calcule os números abaixo, tomando n = 9, a = 7, c = 4 e x0 =3.

x1 x2 x3
x4 x5 x6
x7 x8 x9
x10 x11 x12

Perguntas: O que você percebe, olhando a partir de x10 ? Por quê ocorre
esse comportamento?

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 22 / 31
Aritmética Modular - Aplicações
III. Código de barras

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 23 / 31
Aritmética Modular - Aplicações

III. Código de barras


Os códigos fazem parte da nossa vida!
Ao nascer: número de identificação na maternidade;
Números em documentos: Certidão de nascimento, RG, CPF, Carteira
de trabalho, Título de eleitor, etc;
Produtos: código de barras;
Banco: números de conta, cartões;
Endereço: código CEP.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 24 / 31
Aritmética Modular - Aplicações

III. Código de barras


Os códigos fazem parte da nossa vida!
Ao nascer: número de identificação na maternidade;
Números em documentos: Certidão de nascimento, RG, CPF, Carteira
de trabalho, Título de eleitor, etc;
Produtos: código de barras;
Banco: números de conta, cartões;
Endereço: código CEP.
Em geral: os sistemas de identificação utilizam números: “além de serem
mais eficientes do que os nomes para armazenar e transmitir dados, os
números transpõem a barreira dos idiomas, pois são usados
internacionalmente.”

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 24 / 31
Aritmética Modular - Aplicações

III. Código de barras


O código de barras é uma forma de representação gráfica que viabiliza
a captura automática dos dados por meio de leitura óptica nas
operações automatizadas;
Primeiras ideias: por volta de 1948, graças aos estudantes Bernard
Silver e Norman Joseph Woodland, do Instituto de Tecnologia Drexel,
na Filadélfia;

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 25 / 31
Aritmética Modular - Aplicações

III. Código de barras


O código de barras é uma forma de representação gráfica que viabiliza
a captura automática dos dados por meio de leitura óptica nas
operações automatizadas;
Primeiras ideias: por volta de 1948, graças aos estudantes Bernard
Silver e Norman Joseph Woodland, do Instituto de Tecnologia Drexel,
na Filadélfia;
Onde entra a aritmética modular → no cálculo do dígito verificador
(DV):
I DV é resultado de um algoritmo que envolve os dígitos anteriores;
I DV não contém informações sobre o produto;
I Dependendo do padrão de código adotado, o algoritmo pode ser
diferente. [Pesquise sobre essas diferenças!]

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 25 / 31
Aritmética Modular - Aplicações

III. Código de barras - Exemplo


Considere o contexto abaixo:

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 26 / 31
Aritmética Modular - Aplicações
III. Código de barras - Exemplo para sistema de códigos de barra
GTIN-13

No fundo, o que foi feito: DV + 144 ≡ 0( mod 10).


Andreza C. Beezão Moreira (Universidade Federal de Lavras
short GEX252-
title Matemática Discreta) 27 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O CPF brasileiro tem, atualmente, a configuração XXX.XXX.XXX-XX.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 28 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O CPF brasileiro tem, atualmente, a configuração XXX.XXX.XXX-XX.
os primeiros oito dígitos são chamados de números-base;

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 28 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O CPF brasileiro tem, atualmente, a configuração XXX.XXX.XXX-XX.
os primeiros oito dígitos são chamados de números-base;
o nono dígito define a região fiscal [1 (DF-GO-MS-MT-TO), 2
(AC-AM-AP-PA-RO-RR), 3 (CE-MA-PI), 4 (AL-PB-PE-RN), 5
(BA-SE), 6 (MG), 7 (ES-RJ), 8 (SP), 9 (PR-SC) e 0 (RS)];

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 28 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O CPF brasileiro tem, atualmente, a configuração XXX.XXX.XXX-XX.
os primeiros oito dígitos são chamados de números-base;
o nono dígito define a região fiscal [1 (DF-GO-MS-MT-TO), 2
(AC-AM-AP-PA-RO-RR), 3 (CE-MA-PI), 4 (AL-PB-PE-RN), 5
(BA-SE), 6 (MG), 7 (ES-RJ), 8 (SP), 9 (PR-SC) e 0 (RS)];
o penúltimo dígito é o DV módulo 11 de uma operação com os nove
dígitos anteriores;

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 28 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O CPF brasileiro tem, atualmente, a configuração XXX.XXX.XXX-XX.
os primeiros oito dígitos são chamados de números-base;
o nono dígito define a região fiscal [1 (DF-GO-MS-MT-TO), 2
(AC-AM-AP-PA-RO-RR), 3 (CE-MA-PI), 4 (AL-PB-PE-RN), 5
(BA-SE), 6 (MG), 7 (ES-RJ), 8 (SP), 9 (PR-SC) e 0 (RS)];
o penúltimo dígito é o DV módulo 11 de uma operação com os nove
dígitos anteriores;
o último dígito é o DV módulo 11, agora de uma operação com os
dez dígitos anteriores.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 28 / 31
Aritmética Modular - Aplicações

IV. Cálculo de dígito verificador em CPFs - Exemplo


No caso do CPF, o DV módulo 11 corresponde ao resto da divisão por 11
do somatório da multiplicação de cada algarismo da base por
9, 8, 7, 6, 5, 4, 3, 2, 1 e 0, respectivamente, a partir da unidade [ver figuras
seguintes].
Obs.: O resto 10 é considerado 0.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 29 / 31
Aritmética Modular - Aplicações

IV. Cálculo de dígito verificador em CPFs - Exemplo


No caso do CPF, o DV módulo 11 corresponde ao resto da divisão por 11
do somatório da multiplicação de cada algarismo da base por
9, 8, 7, 6, 5, 4, 3, 2, 1 e 0, respectivamente, a partir da unidade [ver figuras
seguintes].
Obs.: O resto 10 é considerado 0.

Exemplo: Consideremos o CPF com números-base 280012389.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 29 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O primeiro DV do CPF é encontrado conforme a figura abaixo:

enquanto que o segundo DV é determinado em:

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 30 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O primeiro DV do CPF é encontrado conforme a figura abaixo:

enquanto que o segundo DV é determinado em:

O CPF completo é, portanto, 280012389-38.

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 30 / 31
Aritmética Modular - Aplicações
IV. Cálculo de dígito verificador em CPFs
O primeiro DV do CPF é encontrado conforme a figura abaixo:

enquanto que o segundo DV é determinado em:

O CPF completo é, portanto, 280012389-38.


Teste de compreensão: Verifique os DVs do seu próprio CPF!
Andreza C. Beezão Moreira (Universidade Federal de Lavras
short GEX252-
title Matemática Discreta) 30 / 31
Bibliografia e extras

Slides de Matemática Discreta, do Prof. Renato Ramos, DCC/UFLA.


Números inteiros e Criptografia RSA, de Severino Collier Coutinho,
IMPA, 2003.
Ensinando matemática através dos códigos de barras, de Cássia
Regina dos Santos Takahashi, Ciência e Natura, Santa Maria, v. 37,
Ed. Especial PROFMAT, p. 278–288, 2015.
http://ghiorzi.org/DVnew.htm, acessada em 09/05/2019.
Figuras em: https://codigosdebarrasbrasil.com.br/

Calculadora de dígito verificador:


www.gs1.org/services/check-digit-calculator#gtin

Andreza C. Beezão Moreira (Universidade Federal de Lavras


short GEX252-
title Matemática Discreta) 31 / 31

Вам также может понравиться