SlideShare una empresa de Scribd logo
Prolog  Manejo de Archivos - EjerciciosLeonardo Bernal Zamora
La Recursividad
Prolog file
Comandos para el manejo de ficheros o archivoslisting/1Muestra todas las cláusulas que conforman el programa en memoria BC.tell/1El objetivo tell(X) abre el fichero X si no estaba abierto, y define el fichero X como canal de salida activo. Si X no está instanciada se produce un error. La primera vez que se utiliza tell sobre un fichero no existente, se crea un fichero con ese nombre. Si se utiliza tell con un fichero ya existente, el contenido de dicho fichero se destruye.
told/1Este objetivo cierra el canal de salida activo, haciendo que se escriba una marca de fin-de-fichero al final del fichero. El nuevo canal de salida activo pasa a ser la pantalla del ordenador del usuario.see/1El objetivo see(X) abre el fichero X, si todavía no está abierto, y define al canal de entrada activo de tal forma que su origen sea el fichero X. Si X no está instanciada, o su nombre corresponde a un fichero que no existe, se produce un error.seen/1Este objetivo cierra el canal de entrada activo, asignando el nuevo canal de entrada activo al teclado del ordenador del usuario.
findall(+Template, +Goal, -Bag)Busca en la base de datos todas las ocurrencias de término (primer argumento) que satisfacen el objetivo (incluido en el segundo argumento) y devuelve todas las instancias en una lista (tercer argumento) desordenada.assert/1Añade cláusulas al final del conjunto de cláusulas en la BD que tienen el mismo nombre de predicado.asserta/1Añade cláusula al principio del conjunto de cláusulas que tienen el mismo nombre de predicado.
retract/1Borra una cláusula de la BD. Haciendo backtrackingpodremos borrar todas las cláusulas y con cada una de ellas efectuar las operaciones que nos interesen.retract_all/1Borra todas las cláusulas de la BD con el nombre y aridad que aparece en el argumento.
Aplicación BCQue muestran los siguientes comandos
?-  tell('Archivo'), write('universidad'), nl, write('de'),nl,write('boyaca.'), nl, told.
Que sucede con:
Prolog file
Revisa el programa y explica cómo funciona. Modifícalo, de manera que al ingresar delete, el programa borre un país de la base de datos, tal como indica el siguiente diálogo:País? chile. La capital de chile es santiagoPaís? delete. Qué país deseas borrar? chile. Se borró chile. País? chile. No conozco la capital de ese país. ...

Más contenido relacionado

PPTX
Programación 3: colas
DOCX
Algoritmo de listas simples completo
PDF
Diagrama entidad-relacion normalización
PPTX
Arboles multicamino
DOCX
Fractales + Trangulo de Sierpinski en Java
PPTX
Normalización en Bases de datos
PPTX
Linked lists a
PPT
Binary search tree(bst)
Programación 3: colas
Algoritmo de listas simples completo
Diagrama entidad-relacion normalización
Arboles multicamino
Fractales + Trangulo de Sierpinski en Java
Normalización en Bases de datos
Linked lists a
Binary search tree(bst)

La actualidad más candente (20)

PPSX
Principales bases de datos
DOCX
PPT
Pilas En C++
PDF
LI-T12: LI2011-12: Introducción a la programación lógica con Prolog
PPT
Normalizacion de Base de datos,
PPTX
Estructura de datos: lista, pilas y colas
DOCX
INSERCION DE REGISTROS DESDE VISUAL.NET A UNA BD DE SQL SERVER
PPTX
Eliminar elementos de una cola
PPTX
Binary Heap Tree, Data Structure
PDF
BinarySearchTree-bddicken
PPTX
Ordenamientos por selección y Shell
PPTX
PDF
Árboles Multicamino, B y B+
PDF
Programa de Cola Estática
PPTX
AVL Tree in Data Structure
DOC
Unidad 4 est. dat. recursividad
PPT
Shell sort
PPTX
My lectures circular queue
Principales bases de datos
Pilas En C++
LI-T12: LI2011-12: Introducción a la programación lógica con Prolog
Normalizacion de Base de datos,
Estructura de datos: lista, pilas y colas
INSERCION DE REGISTROS DESDE VISUAL.NET A UNA BD DE SQL SERVER
Eliminar elementos de una cola
Binary Heap Tree, Data Structure
BinarySearchTree-bddicken
Ordenamientos por selección y Shell
Árboles Multicamino, B y B+
Programa de Cola Estática
AVL Tree in Data Structure
Unidad 4 est. dat. recursividad
Shell sort
My lectures circular queue
Publicidad

Destacado (15)

PDF
Minimanualillo swi prolog
PDF
Manual lab prolog
PDF
Prolog
PDF
DOCX
Prolog cinthya
PDF
Tutorial de prolog
DOCX
Listas prolog m_c
PDF
Clase de logica posbc
PPTX
Sotfware de Programacion Lógica - CLIPS, PROLOG, LISP
PPT
Estructuras De Control Prolog
DOCX
Problema de la ocho reinas. Implementación en Prolog.
PDF
Programacion practica prolog
PDF
Prolog ejercicios resueltos
DOC
52 ejercicios-resueltos-en-pseudocodigo
Minimanualillo swi prolog
Manual lab prolog
Prolog
Prolog cinthya
Tutorial de prolog
Listas prolog m_c
Clase de logica posbc
Sotfware de Programacion Lógica - CLIPS, PROLOG, LISP
Estructuras De Control Prolog
Problema de la ocho reinas. Implementación en Prolog.
Programacion practica prolog
Prolog ejercicios resueltos
52 ejercicios-resueltos-en-pseudocodigo
Publicidad

Más de Leonardo Bernal Zamora: Docente, Internauta y convencido de la educación para todos (20)

PPTX

Prolog file

  • 1. Prolog Manejo de Archivos - EjerciciosLeonardo Bernal Zamora
  • 4. Comandos para el manejo de ficheros o archivoslisting/1Muestra todas las cláusulas que conforman el programa en memoria BC.tell/1El objetivo tell(X) abre el fichero X si no estaba abierto, y define el fichero X como canal de salida activo. Si X no está instanciada se produce un error. La primera vez que se utiliza tell sobre un fichero no existente, se crea un fichero con ese nombre. Si se utiliza tell con un fichero ya existente, el contenido de dicho fichero se destruye.
  • 5. told/1Este objetivo cierra el canal de salida activo, haciendo que se escriba una marca de fin-de-fichero al final del fichero. El nuevo canal de salida activo pasa a ser la pantalla del ordenador del usuario.see/1El objetivo see(X) abre el fichero X, si todavía no está abierto, y define al canal de entrada activo de tal forma que su origen sea el fichero X. Si X no está instanciada, o su nombre corresponde a un fichero que no existe, se produce un error.seen/1Este objetivo cierra el canal de entrada activo, asignando el nuevo canal de entrada activo al teclado del ordenador del usuario.
  • 6. findall(+Template, +Goal, -Bag)Busca en la base de datos todas las ocurrencias de término (primer argumento) que satisfacen el objetivo (incluido en el segundo argumento) y devuelve todas las instancias en una lista (tercer argumento) desordenada.assert/1Añade cláusulas al final del conjunto de cláusulas en la BD que tienen el mismo nombre de predicado.asserta/1Añade cláusula al principio del conjunto de cláusulas que tienen el mismo nombre de predicado.
  • 7. retract/1Borra una cláusula de la BD. Haciendo backtrackingpodremos borrar todas las cláusulas y con cada una de ellas efectuar las operaciones que nos interesen.retract_all/1Borra todas las cláusulas de la BD con el nombre y aridad que aparece en el argumento.
  • 8. Aplicación BCQue muestran los siguientes comandos
  • 9. ?- tell('Archivo'), write('universidad'), nl, write('de'),nl,write('boyaca.'), nl, told.
  • 12. Revisa el programa y explica cómo funciona. Modifícalo, de manera que al ingresar delete, el programa borre un país de la base de datos, tal como indica el siguiente diálogo:País? chile. La capital de chile es santiagoPaís? delete. Qué país deseas borrar? chile. Se borró chile. País? chile. No conozco la capital de ese país. ...