REPORTE 2

Embed Size (px)

DESCRIPTION

Practica escolar

Citation preview

Instituto Politcnico NacionalEscuela Superior de Cmputo

PRCTICA 2Expresiones regulares

Alumno:Lpez Meja Carlos No

Boleta: 2014310426

Materia: Teora Computacional

Profesora: Luz Mara Snchez Garca

Fecha de entrega: 16/10/2015

IntroduccinUna expresin regular define un patrn de bsqueda para cadenas de caracteres.La podemos utilizar para comprobar si una cadena contiene o coincide con el patrn. El contenido de la cadena de caracteres puede coincidir con el patrn 0, 1 o ms veces.En el caso de este reporte, la expresin regular asignada corresponde al cdigo de barras de un producto. El objetivo de este reporte es mostrar la forma en que se puede representar el cdigo de barras en una expresin regular, junto con el autmata y el cdigo programado en java.

El cdigo de barras consiste en un sistema de codificacin creado a travs de series de lneas y espacios paralelos de distinto grosor. Generalmente se utiliza como sistema de control ya que facilita la actividad comercial del fabricante y del distribuidor, por lo que no ofrece informacin al consumidor, si no datos de operaciones aplicados a identificar productos, llevar control de inventarios, carga y descarga de mercancas, disminuir tiempos de atencin en ventas.Una de las principales ventajas es que los datos almacenados en un cdigo de barras es que puede ser ledo de manera precisa y rpida.

El cdigo de Barras se compone de 13 dgitos. 7 501035 913134As aparece en los productos un nmero afuera del cdigo y debajo 6 del lado derecho y 6 del izquierdo. Este ejemplo es de un cdigo de un producto de Colgate.La correcta divisin sera 750 1035 91313 4 Los primeros 3 representan a Mxico. 750 Los siguientes 4 a la empresa Colgate 1035 Los siguientes 5 al producto una pasta (dentfrico) 91313 El ltimo dgito es un nmero verificador 4

El cdigo de barras es interpretado por la computadora con cada 2 barritas impresas que debajo le corresponden un nmero. Dos barras = Un nmero. Estas barras varan en anchura y de esta manera se tienen hasta 20 combinaciones para formar los nmeros dependiendo estn a la izquierda o la derecha, esto para evitar lea la computadora el cdigo "al revs", es decir con esta codificacin siempre leer de izquierda a derecha, aun le pongamos el cdigo de cabeza.

Planteamiento del problemaEl problema de la expresin regular de un cdigo de barras, es que la restriccin es de 13 dgitos nicamente, por lo que introducir una cantidad diferente de 13 nmeros es incorrecto, ya que no sera un cdigo de barras.Al concatenarse los 13 dgitos entre el rango establecido, nos formara el cdigo de barras, es importante mencionar que el rango para el pas es de 3 dgitos del [0-999], los siguientes correspondientes a la empresa [0-9999], los del producto son de [0-99999], y finalmente el ltimo dgito que es un nmero verificador [0-9].Ahora bien, la solucin que se propone es escribir los 13 valores que nicamente sean nmeros, y cada uno va desde 0 a 9 ([0-9]).

Diseo de la solucin

Expresin regular:[0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]

Implementacin de la solucin

Funcionamiento

Si introducimos menos o ms valores de 13, el cdigo de barras es invlido.

ConclusionesCon esta prctica me di cuenta que las expresiones regulares facilitan en gran medida el manejo de datos de cualquier tipo, en este caso correspondi un cdigo de barras, tanto para escribirlo como para validarlo.Sin embargo, aplica para muchas otras expresiones, por ejemplo, un RFC, un Curp, una cuenta de email, etc.

En cuanto a la programacin, Java es una plataforma que permite programar estas expresiones de manera prctica y sin muchas complicaciones, reduciendo lneas de cdigo innecesarias en C.

Bibliografa

ESCOM. (2015). http://posgrado.escom.ipn.mx/moodle/pluginfile.php/2208/mod_resource/content/2/Exp_Regulares_SalonESCOM.pdf. 15/Oct/2015, de ESCOM Sitio web: http://posgrado.escom.ipn.mx/moodle/pluginfile.php/2208/mod_resource/content/2/Exp_Regulares_SalonESCOM.pdf Annimo. (2013). Tutorial Java. Aprende a programar con Java desde cero.. 15/Octubre/2015, de Programacin Java Sitio web: http://puntocomnoesunlenguaje.blogspot.mx/2013/07/ejemplos-expresiones-regulares-java-split.html