Prolog Using lists with between inside predicate
我在Prolog中有一项作业,而且我非常不习惯用这种语言编写代码:)
因此,我需要实现一些非常简单但难以编写的内容。
假设我有一个方形房间(例如
我想要一个具有参数
因此,我希望它检查例如
我考虑过考虑使用正方形的
但是我很困惑。
所以我有
1 2 3 4 5 6 7 8 9 10 11 12 | positif_position( pos(Ligne, Column)) :- Ligne >= 0, Column >= 0. square(Dimension). shape(square,Dimension) :- square(Dimension). % Verifying if the position is correct here. in_shape(pos(Ligne,Column), shape(square,Dimension)) :- positif_position(pos(Ligne, Column)), Ligne =< Dimension, Column =< Dimension, between(0,Dimension,Range), member(Ligne, [Range]), member(Column, [Range]). |
我真的不知道我的结构方式是否正确。
感谢您的帮助!
代替
1 2 | between(0,Dimension,Range), member(Ligne, [Range]), member(Column, [Range]). |
您的意思是
1 2 |
但这是多余的。到那时,您已经检查了有效性。只需删除这两行。您甚至可能在其中出现一个错误的错误。