Prolog 序言:如何创建一个不允许一个数字与另一个数字相邻的程序

Prolog 序言:如何创建一个不允许一个数字与另一个数字相邻的程序,prolog,between,Prolog,Between,我想写一个prolog程序,需要一个数字来保持在其他两个数字之间,但不能有一个特定的数字作为他的邻居 例如,我有数字1,2,3,4,5。我想让5号保持在除4号以外的任何其他号码之间 我该怎么做呢?问题的解决方案是,如果'L4=4'和'L5=5',那么在prolog中,我会做出类似'L4是L5-2;L4为L5+2',其中L5 notL5=1;L5=5。然后编译器将显示类似于1,4,2,5,3的内容。您需要添加更多信息。谓词应该是什么样子的?在您给出的示例中,1,2,3,4,5-这应该是一个列表吗?

我想写一个prolog程序,需要一个数字来保持在其他两个数字之间,但不能有一个特定的数字作为他的邻居

例如,我有数字1,2,3,4,5。我想让5号保持在除4号以外的任何其他号码之间


我该怎么做呢?

问题的解决方案是,如果'L4=4'和'L5=5',那么在prolog中,我会做出类似'L4是L5-2;L4为L5+2',其中L5 notL5=1;L5=5。然后编译器将显示类似于1,4,2,5,3的内容。

您需要添加更多信息。谓词应该是什么样子的?在您给出的示例中,1,2,3,4,5-这应该是一个列表吗?或者只是一个间隔?它应该是一个列表。我知道在像C这样的其他程序中,你需要使用循环,但是我怎么能在prolog中像循环一样思考呢?在思考循环之前,先想想你会如何使用它!首先给出一个例子,我在想如果'L4=4'和'L5=5',那么在prolog中我会做出类似'L4是L5-1;L4是L5+1'。