
El PROLOG és un llenguatge de programació informàtic que es bassa en operacions lògiques com per exemple 4+6=10. El nom prové del francès Programation en Logique, que tal com he explicat abans, vol di programació lògica.
Aquest llenguatge és molt útil per a operacions matemàtiques simples (sumes, restes, multiplicacions, divisions...) i més complexes, com equacions. En altres paraules, el PROLOG és una Super calculadora, tot i que algunes calculadores d’avui en dia són molt semblants, però no es poden comparar, ja que una calculadora no et pot resoldre una equació complexa. Tot i que no tots els problemes són amb numeros.
A l’hora d’escriure en llenguatge de programació, el PROLOG, les instruccions s’executen en ordre seqüencial, en altres paraules, unes darrere les altres. Els programes en PROLOG es componen per clàusules de Horn , és a dir, a l’hora d’escriure es diu, si això és veritat (antecedent), llavors és veritat la conseqüent. Per exemple, si l’antecedent és 2+3=5, i és veritat, la conseqüent (8-5=3) també es veritat, i si la conseqüent és 3+4=2 (que és errònia) també és veritat.
Una de les curiositats és que al PROLOG s’escriu al rebés, primer s’ha descriure la conseqüent i després l’antecedent. Totalment el contrari dels altres llenguatges.
A continuació els deixo un exemple simple del PROLOG:
Aquest llenguatge és molt útil per a operacions matemàtiques simples (sumes, restes, multiplicacions, divisions...) i més complexes, com equacions. En altres paraules, el PROLOG és una Super calculadora, tot i que algunes calculadores d’avui en dia són molt semblants, però no es poden comparar, ja que una calculadora no et pot resoldre una equació complexa. Tot i que no tots els problemes són amb numeros.
A l’hora d’escriure en llenguatge de programació, el PROLOG, les instruccions s’executen en ordre seqüencial, en altres paraules, unes darrere les altres. Els programes en PROLOG es componen per clàusules de Horn , és a dir, a l’hora d’escriure es diu, si això és veritat (antecedent), llavors és veritat la conseqüent. Per exemple, si l’antecedent és 2+3=5, i és veritat, la conseqüent (8-5=3) també es veritat, i si la conseqüent és 3+4=2 (que és errònia) també és veritat.
Una de les curiositats és que al PROLOG s’escriu al rebés, primer s’ha descriure la conseqüent i després l’antecedent. Totalment el contrari dels altres llenguatges.
A continuació els deixo un exemple simple del PROLOG:
%%
%% declaraciones
%%
padrede('juan', 'maria'). % juan es padre de maria
padrede('pablo', 'juan'). % pablo es padre de juan
padrede('pablo', 'marcela').
padrede('carlos', 'debora').
% A es hijo de B si B es padre de A
hijode(A,B) :- padrede(B,A).
% A es abuelo de B si A es padre de C y C es padre B
abuelode(A,B) :-
padrede(A,C),
padrede(C,B).
% A y B son hermanos si el padre de A es también el padre de B y si A y B no son lo mismo
hermanode(A,B) :-
padrede(C,A) ,
padrede(C,B),
A \== B.
% A y B son familiares si A es padre de B o A es hijo de B o A es hermano de B
familiarde(A,B) :-
padrede(A,B).
familiarde(A,B) :-
hijode(A,B).
familiarde(A,B) :-
hermanode(A,B).
%%
%% consultas
%%
% juan es hermano de marcela?
?- hermanode('juan', 'marcela').
yes
% carlos es hermano de juan?
?- hermanode('carlos', 'juan').
no
% pablo es abuelo de maria?
?- abuelode('pablo', 'maria').
yes
% maria es abuela de pablo?
?- abuelode('maria', 'pablo').
no
Cap comentari:
Publica un comentari a l'entrada