我在看一个算法,这个算法是pascal写的,可惜我没系统学过他,而且手头没书,大家给看看这个代表什么意思?
......
for i:=1 to len do l[i]=[1..n]-l[i]
......
前面是说做len次循环完成do后面的语句,不明白的就是后边的表达式
其中l为某集合的一维数组,这个集合的定义是 set of 1.....maxn 其中maxn为一常数=50
...全文
2107打赏收藏
弱弱的问一个pascal的语法,关于集合类型的表达式
我在看一个算法,这个算法是pascal写的,可惜我没系统学过他,而且手头没书,大家给看看这个代表什么意思? ...... for i:=1 to len do l[i]=[1..n]-l[i] ...... 前面是说做len次循环完成do后面的语句,不明白的就是后边的表达式 其中l为某集合的一维数组,这个集合的定义是 set of 1.....maxn 其中maxn为一常数=50
Set operators
Operator Operation Operand types Result type Example
+ union set set Set1 + Set2
- difference set set S - T
* intersection set set S * T
<= subset set Boolean Q <= MySet
>= superset set Boolean S1 >= S2
= equality set Boolean S2 = MySet
<> inequality set Boolean MySet <> S1
in membership ordinal, set Boolean A in Set1
The following rules apply to +, -, and *.
An ordinal O is in X + Y if and only if O is in X or Y (or both). O is in X - Y if and only if O is in X but not in Y. O is in X * Y if and only if O is in both X and Y.
The result of a +, -, or * operation is of the type set of A..B, where A is the smallest ordinal value in the result set and B is the largest.
The following rules apply to <=, >=, =, <>, and in.
X <= Y is True just in case every member of X is a member of Y; Z >= W is equivalent to W <= Z. U = V is True just in case U and V contain exactly the same members; otherwise, U <> V is True.
For an ordinal O and a set S, O in S is True just in case O is a member of S.