Ejercicio: 1Eva_IT2014_T2 Verificar EAN

Para un número EAN dado, de cualquier producto, se ingresa como un número entero.
# INGRESO
EAN = int(input('European Article Number,EAN: '))
Se requiere separar los componentes usando cociente y residuo: producto, empresa y país según las posiciones y cantidad de dígitos.
# PROCEDIMENTO
# separar las partes
verificador = EAN%10 # un dígito
numero = EAN//10
producto = numero%100000 # cinco dígitos
numero = numero//100000
empresa = numero%10000 # cuatro dígitos
pais = numero//10000
Luego encontrar la suma de los dígitos con la operación indicada en el enunciado.
La siguiente semana de ser necesario se explica el tema de la decena superior.
Algoritmo en Python
# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 1Eva_IT2014_T2 Verificar EAN
# INGRESO
EAN = int(input('European Article Number,EAN: '))
# PROCEDIMENTO
# separar las partes
verificador = EAN%10 # un dígito
numero = EAN//10
producto = numero%100000 # cinco dígitos
numero = numero//100000
empresa = numero%10000 # cuatro dígitos
pais = numero//10000
# calcular verificador
suma = 0
numero = numero = EAN//10
while not(numero<=0):
digito = numero%10
numero = numero//10
suma = suma + 3*digito
digito = numero%10
numero = numero//10
suma = suma + 1*digito
decena = suma//10
superior = (decena + 1)*10
calculado = superior - suma
if (verificador == calculado):
valido = 1
else:
valido = 0
# SALIDA
print('el numero ingresado es válido: ', valido)
print('producto: ', producto)
print('empresa: ', empresa)
print('pais: ', pais)
resultado del algoritmo
European Article Number,EAN: 7702004003508
el numero ingresado es válido: 1
producto: 350
empresa: 2004
pais: 770
>>>
European Article Number,EAN: 7702004003509
el numero ingresado es válido: 0
producto: 350
empresa: 2004
pais: 770
>>>
Diagrama de Flujo
Diagrama según taller realizado en aula. tenía una sección de tarea.
