Prolog: cómo hacer condicionales

2021-04-17 - Categorías: Inteligencia Artificial / Prolog
Prolog los condicionales
Haciendo un condicional en Prolog..

Este es un howto o codekata en Prolog para construir reglas que apliquen condiciones. Es decir, esta es la forma de usar los clásicos if-then-else de los lenguajes más conocidos. En Prolog no tenemos estas palabras clave, pero tenemos la flecha y el punto y coma, con los que podemos conseguir un comportamiento similar al if-then-else.

La flecha hace que si Prolog da como cierto la parte izquierda, entonces aplica la parte derecha. Si a esto le sumamos el operador punto y coma que se comporta como una operación OR, entonces ya tenemos el comportamiento buscado.

El código fuente

La operación básica sería lo siguiente, pero así sólo no se puede usar en Prolog:

algoOcurre(no).
aplicaCondicional :-
    algoOcurre(si) -> 
        write('Condición entonces..')
        ; 
        write('Condición si no..').

Si el predicado algoOcurre se declara como que sí, entonces aplicará la condición entonces, en caso contrario el si no. Si cambiamos el primer predicado por algoOcurre(si) podemos ver el cambio.

Algo más elaborado, pidiendo al usuario que escriba algo:

% Haciendo un condicional con Prolog..

elCondicional :-
    write('¿Cuál es la palabra mágica?'), nl,
    read(Palabra),
    Palabra == 'hola' -> 
        write('¡Hola! Has acertado.')
        ; 
        write('No has acertado.').

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

© 2021 JnjSite.com - MIT license

Sitio hecho con WordPress, diseño y programación del tema por Jnj.