在LINGO程序中,设置非负整数的方法如下:
默认非负整数
LINGO中的变量默认是非负的。你不需要使用任何特殊函数来声明一个变量为非负,除非你需要取消这个默认设置。
限制变量为非负整数
如果你想要确保一个变量是非负整数,可以使用`@gin(x)`函数。例如:
```lingo
@gin(x);
```
这将确保变量`x`是一个非负整数。
取消非负限制
如果你想要变量可以取任意实数,包括负数,可以使用`@free(x)`函数。例如:
```lingo
@free(x);
```
这将取消变量`x`的非负限制。
一维或多维数组的非负整数
如果你有一个一维或多维数组,并且想要确保其中的每个元素都是非负整数,可以使用`@for`循环结合`@gin`函数。例如:
```lingo
@for((i in 1:10): @gin(x[i]));
```
这将确保数组`x`中的每个元素`x[i]`都是非负整数。
示例
```lingo
model
set r/1..10;
set c/1..7;
link r c;
@gin(x); // x为非负整数
@gin(y); // y为非负整数
@for((i in 1:10): @gin(x[i])); // x[i]为非负整数
@free(z); // z可以为任意实数
minimize sum(x);
end
```
在这个示例中:
`x`和`y`被声明为非负整数。
`x[i]`在`@for`循环中被声明为非负整数。
`z`被声明为可以取任意实数。