Anda di halaman 1dari 4

Programa 01:Implementa las relaciones padre, madre, hermano, hermana.

================================
predicates
hombre(string)
mujer(string)
padre(string,string)
matrimonio(string,string)
madre(string,string)
hermano(string, string)
hermana(string, string)
clauses
hombre(“alberto”).
hombre(“jorge”).
hombre(“carlos”).
mujer(“flor”).
mujer(“manuela”).
padre(“alberto”,”carlos”).
padre(“alberto”,”jorge”).
padre(“alberto”,”manuela”).
madre(X,Y):- padre(Z,Y),
matrimonio(Z,X).
hermano(X,Y):- padre(Z,Y),
padre(Z,X),
hombre(X).
hermana(X,Y):- padre(Z,Y),
padre(Z,X),
mujer(X).
Programa 02: Suma dos números leídos desde teclado.
================================
predicates
suma(integer,integer)
lee(integer)
clauses
suma(A,B):- C = A + B,
write(A," + ",B," = ",C),
nl.
lee(N):- write("entre un numero: "),
readint(N).
goal
clearwindow,
lee(N1),
lee(N2),
suma(N1,N2).
Programa 03: Implementa una sencilla calculadora aritmética.
================================
predicates
operacion(char,integer,integer,real)
lee(integer)
muestra(char,integer,integer,real)
loper(char)
clauses
operacion('+',A,B,C):- C = A + B.
operacion('-',A,B,C):- C = A - B.
operacion('*',A,B,C):- C = A * B.
operacion('/',A,B,C):- C = A / B.
lee(N):- write("entre un numero: "),
readint(N).
muestra(O,A,B,C):- write(A," ",O," ",B," = ",C),
nl,
write("presione <enter> "),
readln(_).
loper(Oper):- write("entre un signo (+, -, *, /): "),
readchar(Oper), write(Oper), nl.
goal
clearwindow,
lee(N1),
loper(O),
lee(N2),
operacion(O,N1,N2,Res),
muestra(O,N1,N2,Res).
Programa 04: Calcula el factorial de un número leído desde teclado.
================================

predicates
factorial(integer,integer)
lee(integer)
imprime(integer,integer)
clauses
factorial(0,1).
factorial(N,F):- N > 0,
N1 = N - 1,
factorial(N1,FACTN1),
!,
F = N * FACTN1.
lee(N):- write("entre un n£mero: "),
readint(N).
imprime(N,F):- clearwindow,
write("Factorial de ",N," = ",F),
nl,
write("Presione enter para continuar..."),
readln(_).
goal
clearwindow,
lee(N),
factorial(N,F),
imprime(N,F).

Anda mungkin juga menyukai