Prologa

Páginas: 5 (1173 palabras) Publicado: 6 de junio de 2012
LISTAS Y ARBOLES

PROGRAMACION LOGICA Y FUNCIONAL

OLGUI MARENCO RODELO
CESAR BUELVAS TORRES
VICTOR GARRIDO BARBOSA

FUNDACION UNIVERSITARIA SAN MARTIN CAT SINCELEJO
FACULTAD DE INGENIERIA DE SISTEMAS
SINCELEJO – 2012
TABLA DE CONTENIDO

INTRODUCCION
OBJETIVOS
OBJETIVOS GENERALES
OBJETIVOS ESPECIFICOS
LISTAS
PROPIEDADES DE LAS LISTAS
CABEZA Y COLA DE LAS LISTAS
ACCESO A LOSELEMENTOS DE UNA LISTA
OPERACIONES ENTRE LISTAS
LISTAS DE LISTAS
ARBOLES














INTRODUCCION

En Prolog mediante el uso de estructuras es posible crear cualquier tipo de dato, incluidos los tipos de datos recursivos. El tipo de dato recursivo más sencillo es la lista, la estructura de una lista esta predefinida por dos argumentos uno de ellos sería la cabeza de la lista que esun componente de la lista y la cola que es otra lista con el resto de los componentes.

El presente escrito es un trabajo en el cual se ve reflejado la investigación realizada acerca de los temas relacionados con Listas, Arboles, aplicación y algunos ejemplos y explicación de cada una de estos tipos de datos.














OBJETIVOInvestigar los diferentes esquemas de programación que puedan servir para resolver problemas utilizando listas y arboles en el lenguaje de prolog.


























LISTAS
Una lista en prolog es una secuencia lineal de objetos, con la característica de que toda la manipulación de la secuencia se realiza por el extremo izquierdo, debido a la forma como serepresenta una lista.
Las listas son una manera fácil de trabajar, se utilizan en situaciones donde es difícil o imposible predecir el número de datos a ser guardados o manipulados. En muchos problemas de inteligencia artificial, el número de soluciones parciales a un problema cambia de forma dinámica durante la ejecución.
Una lista en Prolog (como en casi cualquier lenguaje que use listas) se divide
endos partes:
(1) Cabeza. Es el primer elemento de la lista. Puede ser un ´atomo o una
lista, pero a fin de cuentas es el primer elemento de la lista original.
(2) Cola. Es el resto de los elementos de una lista, es de nuevo una lista.
• Si se tiene la lista [a, b, c, d], la a es la cabeza y la cola es la lista [b, c, d]
• Una lista cuya cabeza es A y cola es B se anota como [A | B]
• El predicadoprimer_elemento(X, [X|_]). Tiene éxito si X es el primer elemento de la lista.

Ejemplos:
(1) L=[perro, gato, raton, queso]
(a) cabeza= perro
(b) cola=[gato, raton, queso]
(2) L=[[perro, gato], [raton, queso]]
(a) cabeza=[perro, gato]
(b) cola=[[raton, queso]]
(3) L=[perro]
(a) cabeza=perro
(b) cola=[] la lista vac´ıa
(4) L=[]
(a) cabeza= NO
(b) cola=[] la lista vac´ıa

MANIPULACION DE LAS LISTASLas listas se manipulan dividiéndolas en una cabeza y una cola. Una lista es realmente un objeto compuesto recursivo, que consiste en la cabeza que es el primer elemento, y la cola, que es a su vez una lista que contiene todos los elementos menos el primero.
Normalmente existen dos notaciones para listas una prefija que se representa con paréntesis (cabeza, cola) y una infija que es representadapor corchetes [cabeza y cola] que es la más cómoda de utilizar; para denotar una Lista vacía se representa de la siguiente manera: [] estas Listas no contienen ningún tipo de elemento.
La lista (a, b, c, d) en Prolog se puede escribir de cualquiera de las siguientes formas:
(a,.(b,.(c,.(d.[])))) [a|[b|[c|[d|[]]]]],
Sin embargo la segunda forma admite simplificaciones simples quepermiten escribir todos los elementos de la lista entre corchetes y separados por coma [a,b,c,d],

UNIFICACION Y LISTAS
Se puede unificar una lista con otra:
[X; Y; Z] = [a; b; c]
X = a
Y = b
Z = c
Como una variable que no está instanciada se puede unificar con cualquier objeto, podemos unificar una lista con una variable.
X = [a; b; c]
Debido a que una operación común con las listas es separar...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • prologo
  • Prologo
  • Prologo
  • Prólogo
  • prologo
  • Prólogo
  • prologar
  • Prologo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS