operaciones aritméticas en prolog

Páginas: 5 (1244 palabras) Publicado: 8 de julio de 2013
LABORAT
ORIO 04
ENTRADA Y SALIDA - USO DEL OR - OPERACIONES ARITMÉTICAS

PARTE 1: SALIDA EN PROLOG

Como se ha de haber dado cuenta existen tres predicados, los
dos últimos muestran texto con write, ahora ejecute las consultas
Goal muestra_texto.

Resultado:

Goal muestra_niño(X).

Resultado:------------------------------------------------------------------------------------------------------------------------------------------------------------

SISTEMAS EXPERTOS

IS-442

-1-

Recomendación: si no se ha de utilizar el fail cuando se muestra el texto de
salida, empiezan a aparecer las ocurrencias de las búsquedas en forma
repetida, de ahí que al usar write se recomienda usar fail siempre al final.
Nótese además que siempre que utiliza fail se mostrará en lapantalla “not
solucion” al final por esa razón.

EJEMPLO 02
Ahora se desea mostrar una serie generada con una lista de juegos con
todas las combinaciones entre tres posibles jugadores que se han de
enfrentar, para lo cual copie el siguiente código:

Consulta:
Mostrar todos los que se enfrentan:
Goal juegan(S,T).

Respuesta:

Explique cómo funciona el predicado juegan:
El predicadoniño juega con niño esta validado por el domains niño= Symbol y
El cuakl relaciona a dos niños los cuales juegan uno con el otro.
Realiza todas las combinaciones posibles de la variable niño.

------------------------------------------------------------------------------------------------------------------------------------------------------------

SISTEMAS EXPERTOS

IS-442

-2-

PARTE2: ENTRADA EN
PROLOG.
Readln, se utilizara para este caso un ejemplo en el que se propondrá
el ingreso de una variable por entrada simple que ha de ser
reutilizada para escribir un texto con esta incluida con la salida
estándar write.

Ejecutar
la
siguiente consulta:
Goal
escribe(
X).

R
e
s
p
u
e
s
t
a
:

Descripción: El predicado “escribe” llama al predicado “lee”, elcual
lee la variable S de la ventana con readln (este resultado tendrá que
retornar verdadero por lo que no utilice fail), a continuación write
es utilizado para escribir la variable S que llego como X que se coloca
con la expresión “El nombre ingresado es: ”, X, esto prueba la utilidad
de readln para ingresar variables las cuales no solo se pueden utilizar
para mostrar las variables por lapantalla si no para trabajarlas en
predicados.
------------------------------------------------------------------------------------------------------------------------------------------------------------

SISTEMAS EXPERTOS

IS-442

-3-

Recuérdese: que al utilizar “,” es equivalente a “y logico” y los
predicados están cumpliéndose para todos los resultados verdaderos,
parando con elfail, ahora será necesario distinguir del uso de el “;”,
“o lógico” poco utilizado pero necesario.

PARTE 3: USO DEL O LÓGICO “;”
Antes de ingresar a una aplicación específica veamos una utilidad
sencilla del “o lógico”, copie lo siguiente:

Se supone que los predicados mira, lee y chequea hacen lo mismo, ver si un
nombre de una persona está en la lista, apenas esté una persona en la lista
supresencia deberá darse como verdadera (YES el resultado), si la cláusula
seria:
revisa(X):- mira(X), lee(X), chequea(X).

Consultas:
------------------------------------------------------------------------------------------------------------------------------------------------------------

SISTEMAS EXPERTOS

IS-442

-4-

Verificar si Pedro revisa:
Goal revisa("Pedro").Respuesta:
no
Por qué?
Porque la cláusula revisa (x) dice que x tiene que mirar y leer y chequear. En
este caso Pedro no hace las tres cosas y como la “,” es un “y” lógico basta que
una sentencia sea falsa para que el resultado sea falso.
Verificar si Pablo revisa:
Goal revisa("Pablo").

Respuesta:
no
Por qué?
Pablo solo mira no cumple las demás funciones,
Verificar si Juan revisa:
Goal...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Operaciones Aritmeticas
  • Operadores Aritmeticos
  • Operaciones Aritmeticas
  • operadores aritméticos
  • Operaciones aritmeticas
  • Operadores Aritmeticos
  • operaciones aritmeticas
  • operadores aritmeticos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS