嗨,我有程序(“专家程序”),用户在其中选择几个按钮选项,并且该程序在具有此选中选项的谓词汽车中搜索。在此之后,我希望在窗口中显示这个或多个谓词。这是几行程序。谓词格式:
auto(audi,a4,bialy,sedan,120).
auto(audi,a6,czerwony,sedan,160).
和我希望显示的片段:
X=auto(Marka,_,Kolor,Nadwozie,Km),
send(Cars,append(text(X))),
我试图将整个谓词分配给一个变量,但我可能做不到。如何以不同的方式查看这些数据?
编辑:
我发现类“findall()”有很大帮助:
findall(Model,auto(Marka,Model,Kolor,Nadwozie,Km),X),
send(Cars,append(char_array(X))),
现在可以了,在控制台工作,但不是在 XPCE 中,Prolog 在控制台中捕获错误:
错误:[线程 pce] char_array -> 初始化:参数 1(文本):char_array' expected, found
[a2,a3]'
现在怎么办?我认为错误在“char_array(X)”中,但为什么这不起作用?