En esta sección se incluyen aquellos programas que contienen algoritmos de búsqueda.
A continuación se expone un breve resumen de cada uno de los progamas y, en cada programa, pulsando sobre el botón azul con flecha, a la derecha del título, se accede a su código completo.
Programa selector de palabras, de entre las contenidas en un lemario, por determinadas condiciones, por ejemplo, por ser palindromos, por contener todas las vocales o ser todas sus letras diferentes. Ejemplos de lemarios que este programa puede manejar son los de la Real Academia Española, que de sus siglas Rae este programa toma su nombre.
Las funciones de seleccion de este programa Rae.Lemario tienen diversos modos de funcionamiento, a veces seleccionables mediante parametros, como por ejemplo: a) la seleccion a partir de cierta longitud de la palabra, b) la distincion o no entre mayusculas y minusculas, c) la distincion o no entre vocales acentuadas o no acentuadas y con dieresis, etc. Esta parametrizacion no es general en todas las funciones que, a su vez, se pueden ejecutar o no mediante un If() de control. Finalmente, hay una funcion que puede ejecutarse a la terminacion que, con todas las selecciones realizadas por las funciones del programa, construye un nuevo lemario con todos aquellos terminos, del lemario de entrada, que cumplen al menos una de las caracteristicas seleccionadas, este fichero podria considerarse un lemario de palabras curiosas.
WordSearch.LetterSoup es un programa que busca las palabras de un conjunto dentro de una sopa de letras que se especifica como un rectangulo de caracteres. La busqueda la realiza en todas las direcciones horizontal, vertical y en las 2 diagonales y en todos los sentidos posibles, de izquierda a derecha, de derecha a izquierda, de arriba hacia abajo y de abajo hacia arriba, en total son 8 las posibles formas en las que puede aparecer una palabra. Es un programa desarrollado en un solo fichero Tol y que funciona en todas las versiones del lenguaje de programacion Tol en las que se ha probado.
Las palabras que WordSearch.LetterSoup tiene que buscar las recibe como un conjunto de textos y el programa asume que existen 3 posibilidades, funcionando para las 3: a) que la palabra no aparezca en la sopa de letras, b) que aparezca 1 vez en cualquier direccion (vertical, horizontal y diagonales) y en cualquier sentido (hacia la derecha, hacia la izquierda, hacia arriba o hacia abajo y c) que la palabra aparezca varias veces en diferentes o iguales sentidos y direcciones. Los casos de prueba que acompañan a este programa exploran todas estas posibilidades y en uno de ellos hay que buscar la palabra palabra muchas veces encontrandose en todas las variantes de direccion y sentido.
ChRules.Iterative es un programa iterativo de aplicacion de reglas de reescritura que: a) aplica a un area rectangular de caracteres, b) reglas de transformacion de areas rectangulares de caracteres y c) que juntas forman una base de reglas de transformacion del contenido de ese area para alcanzar un cierto objetivo, como por ejemplo, solucionar un problema Las reglas de ChRules.Iterative son del tipo [condicion, accion], esto es: a) si se cumple la condicion, el rectangulo condicion de la regla equipara con alguna subarea del area de trabajo b) entonces se aplica la accion de transformacion cambiando el contenido de la antigua subarea del area de trabajo por el nuevo rectangulo que proporciona la parte de la accion de la regla.
La idea basica del funcionamiento de ChRules.Iterative es la siguiente: a) si en el estado actual del area de caracteres existe algun subarea rectangular con el mismo contenido que la parte de condicion de una regla, b) entonces dicha regla es aplicable y, de aplicarse, el subarea rectangular del area de caracteres que coincide con la condicion es sobreescrita, conservando la forma, con el area rectangular de caracteres de la accion de la regla. Por tanto, estas reglas de rectangulos de caracteres pueden considerarse como reglas de reescritura, pero, a diferencia de otras reglas de reescritura, en vez de trabajar con secuencias de caracteres trabajan con areas rectangulares de caracteres.
2015 asolver.com | Aviso legal | XHTML | Δ Θ Ξ | Creative Commons | Mapa y funciones del sitio