SlideShare a Scribd company logo
1 of 12
Prolog  Manejo de Archivos - Ejercicios Leonardo Bernal Zamora
La Recursividad
Comandos para el manejo de ficheros o archivos listing/1 Muestra todas las cláusulas que conforman el programa en memoria BC. tell/1 El 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/1 Este 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/1 El 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/1 Este 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/1 Añade cláusulas al final del conjunto de cláusulas en la BD que tienen el mismo nombre de predicado. asserta/1 Añade cláusula al principio del conjunto de cláusulas que tienen el mismo nombre de predicado.
retract/1 Borra 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/1 Borra todas las cláusulas de la BD con el nombre y aridad que aparece en el argumento.
Aplicación  BC Que muestran los siguientes comandos
?-  tell('Archivo'), write('universidad'), nl, write('de'),nl,write('boyaca.'), nl, told.
Que sucede con:
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 santiago País? delete.  Qué país deseas borrar? chile.  Se borró chile.  País? chile. No conozco la capital de ese país. ...

More Related Content

What's hot

Normalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fnNormalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fnLuis Jherry
 
Base de datos colegio
Base de datos colegioBase de datos colegio
Base de datos colegioCarlos Buezo
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadenaTensor
 
Estructura de Datos, Multilistas
Estructura de Datos, MultilistasEstructura de Datos, Multilistas
Estructura de Datos, MultilistasCristhian Rosales
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaAngel Vázquez Patiño
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesJosé Antonio Sandoval Acosta
 
ED Unidad 3: Estructuras de datos lineales (listas)
ED Unidad 3: Estructuras de datos lineales (listas) ED Unidad 3: Estructuras de datos lineales (listas)
ED Unidad 3: Estructuras de datos lineales (listas) Franklin Parrales Bravo
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje cwuaro1
 
POO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivosPOO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivosFranklin Parrales Bravo
 
Estructuras cíclicas o repetitivas en la programación
Estructuras cíclicas o repetitivas en la programaciónEstructuras cíclicas o repetitivas en la programación
Estructuras cíclicas o repetitivas en la programaciónPandora412
 
1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptxFernando Solis
 
Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)
Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)
Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)Universidad Nacional de Piura
 
Búsqueda no informada - Búsqueda bidireccional
Búsqueda no informada - Búsqueda  bidireccionalBúsqueda no informada - Búsqueda  bidireccional
Búsqueda no informada - Búsqueda bidireccionalLaura Del Pino Díaz
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSDarwin Durand
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)michell_quitian
 

What's hot (20)

Normalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fnNormalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fn
 
Colecciones en java
Colecciones en javaColecciones en java
Colecciones en java
 
Base de datos colegio
Base de datos colegioBase de datos colegio
Base de datos colegio
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Estructura de Datos, Multilistas
Estructura de Datos, MultilistasEstructura de Datos, Multilistas
Estructura de Datos, Multilistas
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
ED Unidad 3: Estructuras de datos lineales (listas)
ED Unidad 3: Estructuras de datos lineales (listas) ED Unidad 3: Estructuras de datos lineales (listas)
ED Unidad 3: Estructuras de datos lineales (listas)
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Ejercicios resueltos con Python
Ejercicios resueltos con PythonEjercicios resueltos con Python
Ejercicios resueltos con Python
 
POO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivosPOO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivos
 
Estructuras cíclicas o repetitivas en la programación
Estructuras cíclicas o repetitivas en la programaciónEstructuras cíclicas o repetitivas en la programación
Estructuras cíclicas o repetitivas en la programación
 
1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx
 
Prolog
PrologProlog
Prolog
 
Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)
Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)
Base de Datos(Funciones, Vistas,Procedimientos Almacenados,Triggers)
 
Búsqueda no informada - Búsqueda bidireccional
Búsqueda no informada - Búsqueda  bidireccionalBúsqueda no informada - Búsqueda  bidireccional
Búsqueda no informada - Búsqueda bidireccional
 
Recursividad
RecursividadRecursividad
Recursividad
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOS
 
Tipos de listas en estructura de datos
Tipos de listas en estructura de datosTipos de listas en estructura de datos
Tipos de listas en estructura de datos
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)
 

Viewers also liked (15)

Minimanualillo swi prolog
Minimanualillo swi prologMinimanualillo swi prolog
Minimanualillo swi prolog
 
Manual lab prolog
Manual lab prologManual lab prolog
Manual lab prolog
 
Prolog
PrologProlog
Prolog
 
Prolog
PrologProlog
Prolog
 
Prolog cinthya
Prolog cinthyaProlog cinthya
Prolog cinthya
 
Tutorial de prolog
Tutorial de prologTutorial de prolog
Tutorial de prolog
 
Listas prolog m_c
Listas prolog m_cListas prolog m_c
Listas prolog m_c
 
Practicas prolog2011 listas
Practicas prolog2011 listasPracticas prolog2011 listas
Practicas prolog2011 listas
 
Clase de logica posbc
Clase de logica posbcClase de logica posbc
Clase de logica posbc
 
Sotfware de Programacion Lógica - CLIPS, PROLOG, LISP
Sotfware de Programacion Lógica - CLIPS, PROLOG, LISPSotfware de Programacion Lógica - CLIPS, PROLOG, LISP
Sotfware de Programacion Lógica - CLIPS, PROLOG, LISP
 
Estructuras De Control Prolog
Estructuras De Control PrologEstructuras De Control Prolog
Estructuras De Control Prolog
 
Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.
 
Programacion practica prolog
Programacion practica prologProgramacion practica prolog
Programacion practica prolog
 
Prolog ejercicios resueltos
Prolog ejercicios resueltosProlog ejercicios resueltos
Prolog ejercicios resueltos
 
52 ejercicios-resueltos-en-pseudocodigo
52 ejercicios-resueltos-en-pseudocodigo52 ejercicios-resueltos-en-pseudocodigo
52 ejercicios-resueltos-en-pseudocodigo
 

Similar to Prolog file (20)

Unix 1314 test
Unix 1314 testUnix 1314 test
Unix 1314 test
 
10 comandos basicos de linux
10 comandos basicos de linux10 comandos basicos de linux
10 comandos basicos de linux
 
Comandos básicos ubuntu
Comandos básicos ubuntuComandos básicos ubuntu
Comandos básicos ubuntu
 
MANUAL DE PRACTICAS DE WINDOWS SERVER 2008(Alberto Hdz)
MANUAL DE PRACTICAS DE WINDOWS SERVER 2008(Alberto Hdz) MANUAL DE PRACTICAS DE WINDOWS SERVER 2008(Alberto Hdz)
MANUAL DE PRACTICAS DE WINDOWS SERVER 2008(Alberto Hdz)
 
Tema 10 www.fresymetal.com
Tema 10 www.fresymetal.comTema 10 www.fresymetal.com
Tema 10 www.fresymetal.com
 
Shell comandosbasicos
Shell comandosbasicosShell comandosbasicos
Shell comandosbasicos
 
Fichero c y c++
Fichero c y c++Fichero c y c++
Fichero c y c++
 
Actividad3 4 david a. condori tantani
Actividad3 4  david a. condori tantaniActividad3 4  david a. condori tantani
Actividad3 4 david a. condori tantani
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Pontificia universidad católica del ecuador flex y bison
Pontificia universidad católica del ecuador flex y bisonPontificia universidad católica del ecuador flex y bison
Pontificia universidad católica del ecuador flex y bison
 
Manual learn the command line
Manual learn the command lineManual learn the command line
Manual learn the command line
 
Investigacion Flex Y Bison
Investigacion Flex Y BisonInvestigacion Flex Y Bison
Investigacion Flex Y Bison
 
Cplus
CplusCplus
Cplus
 
C++
C++C++
C++
 
Programación en c++
Programación en c++Programación en c++
Programación en c++
 
Grupo nro4ficheros
Grupo nro4ficherosGrupo nro4ficheros
Grupo nro4ficheros
 
Flex y Byson
Flex y BysonFlex y Byson
Flex y Byson
 
Trabajo Navidad
Trabajo NavidadTrabajo Navidad
Trabajo Navidad
 
Comandoslinux
ComandoslinuxComandoslinux
Comandoslinux
 
Flex y bison
Flex y bisonFlex y bison
Flex y bison
 

More from Leonardo Bernal Zamora: Docente, Internauta y convencido de la educación para todos

More from Leonardo Bernal Zamora: Docente, Internauta y convencido de la educación para todos (20)

Conceptos y operaciones básicas
Conceptos y operaciones básicasConceptos y operaciones básicas
Conceptos y operaciones básicas
 
Operaciones lenguajes
Operaciones lenguajesOperaciones lenguajes
Operaciones lenguajes
 
Operaciones cadenas
Operaciones cadenasOperaciones cadenas
Operaciones cadenas
 
Introducción a la Ingeniería de Sistemas II 2013
Introducción a la Ingeniería de Sistemas II 2013Introducción a la Ingeniería de Sistemas II 2013
Introducción a la Ingeniería de Sistemas II 2013
 
Rea actividad 2
Rea actividad 2Rea actividad 2
Rea actividad 2
 
Rea
ReaRea
Rea
 
Busquedas en internet
Busquedas en internetBusquedas en internet
Busquedas en internet
 
Proyecto java
Proyecto javaProyecto java
Proyecto java
 
Clase 2 POO
Clase 2 POOClase 2 POO
Clase 2 POO
 
Clase5 POO
Clase5 POOClase5 POO
Clase5 POO
 
Clase 41
Clase 41Clase 41
Clase 41
 
Clase 4
Clase 4Clase 4
Clase 4
 
2 elementos pseudocodigo
2 elementos pseudocodigo2 elementos pseudocodigo
2 elementos pseudocodigo
 
Clase 23
Clase 23Clase 23
Clase 23
 
Clase 22
Clase 22Clase 22
Clase 22
 
Clase 1. lógica de la programación
Clase 1. lógica de la programaciónClase 1. lógica de la programación
Clase 1. lógica de la programación
 
Unidad 4 docentes colombianos
Unidad 4 docentes colombianosUnidad 4 docentes colombianos
Unidad 4 docentes colombianos
 
Prolog 2011 2
Prolog 2011 2Prolog 2011 2
Prolog 2011 2
 
Practicas prolog2011
Practicas prolog2011Practicas prolog2011
Practicas prolog2011
 
Comunciacion 2.0
Comunciacion 2.0Comunciacion 2.0
Comunciacion 2.0
 

Prolog file

  • 1. Prolog Manejo de Archivos - Ejercicios Leonardo Bernal Zamora
  • 3.
  • 4. Comandos para el manejo de ficheros o archivos listing/1 Muestra todas las cláusulas que conforman el programa en memoria BC. tell/1 El 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/1 Este 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/1 El 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/1 Este 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/1 Añade cláusulas al final del conjunto de cláusulas en la BD que tienen el mismo nombre de predicado. asserta/1 Añade cláusula al principio del conjunto de cláusulas que tienen el mismo nombre de predicado.
  • 7. retract/1 Borra 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/1 Borra todas las cláusulas de la BD con el nombre y aridad que aparece en el argumento.
  • 8. Aplicación BC Que muestran los siguientes comandos
  • 9. ?- tell('Archivo'), write('universidad'), nl, write('de'),nl,write('boyaca.'), nl, told.
  • 11.
  • 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 santiago País? delete. Qué país deseas borrar? chile. Se borró chile. País? chile. No conozco la capital de ese país. ...