BackTracking en C#

La siguiente aplicación de escritorio muestra como funciona el algoritmo BackTracking en la búsqueda de una salida en un laberinto proporcionado.

El laberinto puede ser modificado en la clase "Administrador" con tan solo cambiar la matriz de elementos que lo representan, para esto es necesario modificar el arreglo asignado en la propiedad "Estructura" del objeto "Laberinto", donde:

  • 'E' Representa la entrada.
  • 'S' Representa la salida.
  • '*' Representa un muro.
  • 'O' Representa las casillas libres.

Si se desea aumentar o disminuir el tamaño del laberinto, el total de filas y columnas de la nueva estructura deberá de ser actualizado en la propiedad "Filas" y "Columnas" del objeto, así como también, si se cambia la casilla de entrada y salida, se tendrán que asignar las coordenadas en la propiedad "Entrada" y "Salida" del objeto antes mencionado. 

BackTracking.rar (969,86 kb)

Analizador Léxico en C#.

En el presente artículo te comparto un analizado léxico creado en visual studio 2012 utilizando como lenguaje C#.

Dicho analizador es capaz de recibir una secuencia de caracteres y producir una salida compuesta de tokens (componentes léxicos).

Los tokens reconocidos por el analizador son los siguientes:

  • Números: 0 1 2 3 4 5 6 7 8 9
  • Variables: A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z
  • Operadores: + - * /
  • Delimitadores: ( )

AnalizadorLexico

En el siguiente enlace podrás descargar el código fuente:

Analizador.rar (52,71 kb)

Curp en C#.

El presente proyecto implementa una biblioteca de clase para generar la CURP (Clave Única de Registro de Población) de una persona. Dicha biblioteca de clase se encuentra encapsulada en un paquete NuGet que puedes descargar a través del siguiente enlace: https://www.nuget.org/packages/Critza.Bibliotecas

Actualmente la biblioteca es capaz de generar la Curp sin homoclave(16 de 18 posiciones) incluyendo todas las reglas y excepciones estipuladas por la RENAPO (Registro Nacional de Población e Identificación Personal), las cuales puedes consultar en el siguiente documento: http://renapo.gob.mx/swb/swb/RENAPO/InstructivoCURP.

En este momento me encuentro investigando sobre el algoritmo que utiliza la RENAPO para generar esos 2 últimos dígitos con el propósito de complementar la biblioteca de clase :).

En el ejemplo que presento en esta publicación encontraras una aplicación de escritorio que implementa la biblioteca de clase, con el fin de que puedas comprobar su funcionamiento.

Cabe mencionar que tanto la biblioteca de clase como la aplicación de escritorio fueron creadas en Visual Studio 2013 utilizando como lenguaje C#.

Curp1

Curp2

Curp3

En el siguiente enlace podrás descargar el código fuente:

Curp.rar (134,20 kb)