树系在prolog中不能正常工作

时间:2014-05-19 05:57:22

标签: prolog

我试图运行一个代表树的prolog程序但是当我从菜单中选择选项1时显示我是假的。

代码:

https://github.com/carson314/Prolog/blob/master/menus.pl

1 个答案:

答案 0 :(得分:1)

您的代码中存在两个问题:

opciones(X):-
(
    (X = 1) ->
    escribe("Escriba el nombre de la persona cuyo padre es que se encuentran:"),nl,
    read(X),
    escribe("Padre "),
    escribe(X),
    escribe(" es:"),nl,
    father(Z,X),
    escribe(Z),nl,
    pausa;

当您致电opciones(1)时,X绑定到1,因此read(X)不会将X绑定到用户输入但检查如果用户输入等于1。这是第一个问题。第二个问题是read/1读取原子而escribe/1需要列表或字符代码。您可以使用atom_codes/2来处理它。