28 de marzo de 2009

Automata hecho en Java

Hola.

Esta vez les traigo algo más sobre Java. Y específicamente algo de autómatas.

Tengo una clase que se llama Teoría de la Computación, en la cual estamos viendo analizadores léxicos, gramáticos, autómatas y algo más. Y pues tengo una maestra buena gente que nos comenzó enseñando teoría sobre los autómatas que finitos, determinísticos, no determinísticos etc., y el caso es que nos encargo a todo el grupo que, por equipos, programáramos un autómata (ella no lo asigno) en cualquier lenguaje de programación (por supuesto que elegí Java).

Las condiciones del programa eran:
1.- Recibir las cadenas de un archivo de texto
2.- Usar la matriz de transición
3.- Validar correctamente las cadenas y decir si eran validas o no

Suena sencillo (o al menos así lo escuche yo), y al momento de comenzar a programarlo, batalle mucho porque no sabía cómo utilizar correctamente la matriz de transición.

Así que comencé a leer, leer, leer y por ultimo internet. Y no encontraba algo solido, concreto que me pudiera ayudar. Pero nada que una mente joven no pueda resolver, varias desveladas y lo conseguí.

La representación grafica del autómata es algo parecida a esto.

Ya explicado para que le entiendan.

La cadena debe de empezar por una o más letras mayúsculas (L) (Cualquier letra del abecedario), seguido de una o más letras minúsculas (l) (Cualquier letra del abecedario), después puede seguir un digito cualquiera una o más veces (d), y ahí puede terminar el autómata. Sin embargo entra una condición más que contempla la entrada de un guion bajo (_) y seguido de un digito una o más veces. Concluye cuando después de la cadena se encuentra con un Enter, un Tabulador o un Espacio.

Como podemos ver, parece algo sencillo, pero no lo es. Por eso, yo lo quiero compartir con todos ustedes por si a alguna persona le sirve, lo puede descargar. Este es el archivo Automata.java (Cópienlo y lo guardan con la extensión .java) y este es el archivo Cadena.txt de donde toma las cadenas (los 2 archivos deben encontrarse dentro de la misma ubicación).

Espero y les sirva a más de uno. Si tienen alguna duda, pueden mandarme un correo electrónico para tratar de resolvérsela. Y si les sirve, pueden dejar un comentario para saber si le estoy ayudando a alguien, para poder darme cuenta y seguir poniendo mas códigos.

Ya para terminar quiero decirles que tengo en el comal una nueva versión de FCalculator, que estaré publicando la siguiente semana. Creo que será el día 4 de Abril. Como lo estoy acabando de darle su última pulida, no lo tuve listo para ponerlo hoy.

Nos vemos después con más novedades.

ACTUALIZACION:
Si te interesó este artículo sobre autómatas, puedes ver este otro autómata que diseñe especificamente para los programadores novatos como yo.

Es un autómata para verificar las constantes numéricas. Te lo recomiendo. Esta muy bien explicado.

15 de marzo de 2009

Fotos frikis

Bueno, comienzo poniendo esta imagen que me acaba de salir ahorita. Y es que como tengo el KIS 2009, me salio una ventana de alerta acerca de que el servicio de fotografias de Google es un sitio fraudulento (phishing).

No se si sea verdad, pero pues ahi esta la foto. Solo dar clic sobre la imagen para ver en tamaño grande.


Y continuando, el dia de ayer, estaba de visita en la casa de un amigo y me mostro estas imagenes que estan chidas.

Yo la encontre con los titulos de que el Leon Mexicano y el Panda Mexicano.

Pero pues esos pobres animales, no tienen la culpa de que sus dueños los conviertan en la risa de la gente y que ademas otros lo estemos publicando en nuestros respectivos blogs.

LEON MEXICANO



PANDA MEXICANO

14 de marzo de 2009

2 Años

El 10 de Marzo del 2007 nacio este espacio.



Y aunque parece tarde, le doy gracia porque gracias al blog, he aprendido cosas y conocido gente.
Ademas a 2 años ya casi van 300,000 visitas. Grandioso verdad!

Gracias a todos, nos vemos pronto.

13 de marzo de 2009

Como conquistar...

No piensen que con el título me refiero a “como conquistar el mundo”, o “como conquistar Java”, o quizás muchos piensan que se refiere a “como conquistar… “TODO””.

Sin embargo, el titulo es algo más simple que eso, se refiere a “como conquistar a un hombre” (si eres mujer) o “como conquistar a una mujer” (si eres hombre), aunque quizás puedas si eres del mismo sexo, eso no importa mucho ahorita.

El post lo retomo gracias a que hace tiempo escribí un artículo sobre “tips para conquistar a un hombre” y “tips para conquistar a una mujer”. Y créanme que viendo estadísticas del blog, me puedo dar cuenta de que muchos entran a mi espacio y lo conocen gracias a esas entradas.


Cada vez recibo muchos correos (los comentarios del blog), exactamente de esas entradas, unas a favor de los tips, otros en contra y otros aportando. Pero porqué vuelvo a retomar este tema?


Primeramente para decirles gracias a todos los que visitan mi blog. Y específicamente a los que lo hacen por esas entradas.


Y en segunda para decirles que hay muchas técnicas y mañas para lograr esto. Las que más resultan son: La experiencia y la originalidad. Con lo de “originalidad” me refiero a ser uno mismo y no aparentar (mentir) ser alguien más.


Créanme que esa persona querrá conocer más a una persona auténtica que a un farsante que se lo tragan las mentiras y terminan calificados con mala puntuación.


Claro que también pueden ayudar mañas cuando uno no tiene experiencia y que realmente es muy tímido o que no sabe ni que hacer. Por eso uno recurre a los amigos a pedir consejos y otros lo hacen más fácil, visitan mi blog! :P


Y hoy les traigo un regalo que ya les había dado hace tiempo, pero quizás muchos no lo tomaron, y ese regalo es un libro muy bueno (que de hecho compré), que trata de enseñarnos como piensan los hombres y las mujeres.


Un libro entretenido para los que están queriendo acercarse a esa persona que los tiene aquí, leyendo; un libro grandioso, que espero esta vez sí lo descarguen.


Este libro se llama, “Los hombres son de Marte, Las mujeres son de Venus”. Más que tips, es una obra completa que te enseñara como piensa él o ella, y tú, sin dificultades, puedes llegar a otro nivel.



Y como siempre, que soy buena persona (distraída y que no actualizo seguido), se los voy a dejar para que lo comiencen a descargar y se pongan darle una leída. Y si te gusta (como a mí) lo acabaras comprando (como yo).


Espero pronto traerles novedades y algo más sobre Java. Tengo algo de material nuevo que compartir, pero tengo poco tiempo. Al final, saben que si pongo lo que digo, algo de ayuda para los que en algún momento batallaron o están teniendo dificultades como yo, y a mí me gusta ayudar.


Regresaré pronto.


Descarga por rapidshare


Descarga por badongo


Tips para conquistar a un hombre

Tips para conquistar a una mujer