Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Programa Factorial
factorial(0,1).
factorial(N,_):- N<0,!,fail.
factorial(N,F):-mayor(N,0), diferencia(N,1,N1),
factorial(N1,F1), producto(N,F1,F).
mayor(X,Y):- X>Y.
diferencia(X,Y,Z):- Z is X-Y.
producto(X,Y,Z):- Z is X*Y.
Programa División
Programa Promedio
producto(X,Y,Z):- Z is (X+Y)/2.
Programa Progenitor
/* Relacion Progenitor */
progenitor(secreto,neartic).
progenitor(nijinsky,neartic).
progenitor(neartic,nearco).
progenitor(nearco,nasrullan).
caballo(secreto).
caballo(neartic).
caballo(nijinsky).
2|Página
caballo(nearco).
caballo(nasrullan).
/*Reglas recursivas*/
ancestro(X,Y):-progenitor(X,Y). /* "X" será antepasado de "Y", si "X" es progenitor de "Y"
*/
ancestro(X,Y):-progenitor(X,Z),ancestro(Z,Y). /* "X" será antepasado de "Y", si "X" es
progenitor de "Z" y "Z" es antepasado de "Y" */
Programa Empleado
empleado(ortiz).
empleado(zaragoza).
mecanografia(ramos).
gerente(jimenez).
gerente(mejia).
supervisa(X,Y):-gerente(X),empleado(Y).
supervisa(X,Y):-empleado(X),mecanografia(Y).
supervisa(X,Y):-gerente(X),mecanografia(Y).
3|Página
Pantallas Corridas
Pantallas de corrida de la división
4|Página
Pantallas de corrida del empleado
5|Página
Pantalla de Corrida de Factorial
6|Página
Problemas encontrados de la división
Problema Solución
7|Página
Investigación
OPERADORES
En Prolog están predefinidos los operadores aritméticos y relacionales típicos, con la
precedencia habitual entre ellos:
Atributos:
POSICIÓN:
Prefijo: el operador va delante de sus argumentos.
Infijo: el operador se escribe entre los argumentos.
Postfijo: el operador se escribe detrás de sus argumentos.
PRECEDENCIA: Nos indica el orden en que se realizan las operaciones. El operador
más prioritario tendrá una precedencia 1 y el menos, 1201 (depende de la
implementación).
ASOCIATIVIDAD: Sirve para quitar la ambigüedad en las expresiones en las que
hay dos operadores, uno a cada lado del argumento, que tienen la misma
precedencia.
8|Página
Conclusión
Parar el ingreso de todas las operaciones aritméticas, era necesario indagar sobre
operaciones básicas elementales, a través de los operadores lógicos para así llegar al
resultado requerido. La interpretación de las fórmulas investigadas eran relativamente
sencillas hasta que se aplica la recursividad como en el ejemplo del número factorial
donde se tiene que multiplicar el número dado por uno anterior.
Bibliografia
https://www.infor.uva.es/~teodoro/PrologAlicante.pdf
9|Página