LINGO 函数:基本运算符

作者&投稿:佐钞 (若有异议请与网页底部的电邮联系)
1 算术运算符

^ 乘方  ﹡ 乘 / 除 ﹢ 加 ﹣ 减

这些运算符的优先级由高到底为:

高 ﹣(取反)

    ^

    ﹡/

低 ﹢﹣

2 逻辑运算符

LINGO 具有9种逻辑运算符:

#not# 否定该操作数的逻辑值,#not#是一个一元运算符

#eq# 若两个运算数相等,则为 true;否则为 flase

#ne# 若两个运算符不相等,则为 true;否则为 flase

#gt# 若左边的运算符严格大于右边的运算符,则为 true;否则为 flase

#ge# 若左边的运算符大于或等于右边的运算符,则为 true;否则为 flase

#lt# 若左边的运算符严格小于右边的运算符,则为 true;否则为 flase

#le# 若左边的运算符小于或等于右边的运算符,则为 true;否则为 flase

#and# 仅当两个参数都为 true 时,结果为 true;否则为 flase

#or# 仅当两个参数都为 false 时,结果为 false;否则为 true

这些运算符的优先级由高到低为:

高 #not#

#eq# #ne# #gt# #ge# #lt# #le#

低 #and# #or#

例 4.2 逻辑运算符示例

2 #gt# 3 #and# 4 #gt# 2,其结果为假(0)。

3 关系运算符

LINGO 有三种关系运算符:“=”、“<=”和“>=”。LINGO 中还能用“<”表示小于等于关系,“>”表示大于等于关系。LINGO 并不支持严格小于和严格大于关系运算符。然而,如果需要严格小于和严格大于关系,比如让 A 严格小于 B:A<B,那么可以把它变成如下的小于等于表达式:A+ε<=B,这里ε是一个小的正数,它的值依赖于模型中 A 小于 B 多少才算不等。 

下面给出以上三类操作符的优先级:

高     #not# ﹣(取反)

        ^

        ﹡ /

        ﹢﹣

        #eq# #ne# #gt# #ge# #lt# #le#

        #and# #or#

低     <= = >=

~