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)

Juego del Gato con IA en C#

A continuación te presento una aplicación de escritorio construida en el lenguaje C#, la cual expone como funcionalidad el juego del gato con inteligencia artificial implementando los siguientes algoritmos de aprendizaje:

Empírico

Algoritmo basado en la experiencia obtenida durante las partidas, almacenando todas las jugadas del oponente en archivos de texto con el fin de poder utilizar las jugadas más optimas en próximas partidas.

Minimax

Algoritmo basado en un árbol de juegos que es definido por 2 jugadores llamados MIN y MAX, en donde cada uno de ellos realiza una secuencia de movimientos que los conduzcan a un estado objetivo (un estado terminal que es ganador). Cada vez que se va profundizando en el árbol de juegos, el número sobre cada nodo hoja indica el valor de utilidad para llegar a un estado terminal, asumiendo que los valores altos son buenos para MAX y los malos para MIN.

 

Gato

Para finalizar te comparto el enlace para que puedas descargar el proyecto completo:

Juego del Gato con IA.rar (174,42 kb)