Prolog 中的相等运算符2024 年 8 月 29 日 | 阅读 3 分钟 为了测试相等性和不等性,Prolog 有三种类型的关系运算符。算术表达式的值可以通过第一种关系运算符进行比较。项可以通过其他两种类型的关系运算符进行比较。 相等运算符 (=:=)给定算术表达式 如果 E1 和 E2 的计算结果相同,则上面的 E1 =:= E2 成功。 例如 Prolog 使用 checkeven/1 谓词来识别整数是奇数还是偶数。 // 是除法运算符。它将第一个参数除以第二个参数,并且该除法的结果会截断为最接近它和零之间的整数。所以 7//2 是 3, 18//2 是 9, -27//2 是 -13, -10//2 是 -5。将整数除以 2 并将其乘以 2 将得到原始整数(如果它是偶数),否则不是。 不等运算符 (=\=)给定算术表达式 如果 E1 和 E2 的计算结果不相同,则算术表达式 E1 =\= E2 成功。 例如 项相同给定目标 在infix运算符 == 中,两个参数都必须是项。如果 Term1 和 Term2 相同,则上述目标成功。 例如 当算术表达式值与 is/2 一起使用时,算术表达式值只能求值。这里,该项由 5+4 定义,参数为 5 和 4,函子为 +。这个项与 2+7 项完全不同。 项不相同 (\==)给定目标 上面的目标用于测试 Term1 和 Term2 是否不相同。如果 Term1 == Term2 失败,则 Term1 \== Term2 成功。否则,目标失败。 例如 上面的输出表明变量 A 和 B 是不同的变量,并且都未绑定。 项相同并统一 (=)== 运算符类似于相等运算符 =,但存在重要差异。如果 Term1 和 Term2 统一,则 Term1==Term2 成功。 例如 非统一 (\=)给定目标 如果 Term1 = Term2 失败,则上述目标成功。这意味着两个项无法统一。否则,上述目标失败。 例如 下一个主题Prolog 中的逻辑运算符 |
我们请求您订阅我们的新闻通讯以获取最新更新。