Prolog 列表操作

我有一段代码,它基本上需要将一个列表作为条目添加到更大的列表中。所以 NewBoardsList 应该包含在 moves_generate_board 函数中生成的所有 boards。问题是我在 Prolog 中得到了 False。有什么帮助吗?

moves((Colour,_),Board,NewBoardsList):-        other_colour(Colour,OtherColour),        findall((X,Y,OtherColour,N),            (member((X,Y,OtherColour,N),Board),             threaten_by(Colour,(X,Y,OtherColour,N),Board)),            Options),        moves_generate_board(Options,Board,NewBoardsList).    moves_generate_board([],Board,BoardsList).    moves_generate_board([(X,Y,_,_)|T],Board,List):-        replace((X,Y,-,-),Board,NewBoard),        moves_generate_board(T,Board,[NewBoard|List]).

回答:

我猜问题出在 moves_generate_board/3 中,它看起来很奇怪。也许你想要的是:

moves_generate_board([],_,[]). moves_generate_board([(X,Y,_,_)|T],Board,[NewBoard|List]):-   replace((X,Y,-,-),Board,NewBoard),   moves_generate_board(T,Board,List).

还有关于 replace((X,Y,-,-),... 的那些 - (破折号)….我不确定那是什么意思

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注