Escolar Documentos
Profissional Documentos
Cultura Documentos
nombre(triangulo):- orden(3).
nombre(triangulo_isosceles):-
nombre(triangulo),
lados_iguales(2).
nombre(triangulo_rectangulo):-
nombre(triangulo),
angulo_recto(si).
nombre(triangulo_rectangulo_isosceles):-
nombre(triangulo_isosceles),
nombre(triangulo_rectangulo).
nombre(triangulo_equilatero):-
nombre(triangulo),
lados_iguales(3).
%Cuadrilateros
nombre(cuadrilatero):- orden(4).
nombre(trapecio):-
nombre(cuadrilatero),
lados_paralelos(2).
nombre(paralelograma):-
nombre(cuadrilatero),
lados_paralelos(4).
nombre(rectangulo):-
nombre(paralelogramo),
angulo_recto(si).
nombre(rombo):-
nombre(paralelogramo),
lados_iguales(4).
nombre(cuadrado):-
nombre(rombo),
nombre(rectangulo).
ask(Pred,_,X):-
memory(Pred,X).
ask(Pred,_,X):-
memory(Pred,X),
!,
fail.
ask(Pred,Question,X):-
write(Question),
ready(Y),
assert(memory(Pred,Y)),
X==Y.