sets
编辑教程sets
集合是相同类型的元素的集合. Pascal允许定义集数据类型.集合中的元素称为其成员.在数学中,集合通过将成员括在大括号{} 中来表示.但是,在Pascal中,set元素包含在方括号[]中,它们被称为set构造函数.
定义集类型和变量
Pascal集合类型定义为
set-identifier = set of base type;
集合类型的变量定义为
var
s1,s2,...:set-identifier;
或,
s1, s2...: set of base type;
一些有效的集合类型声明的示例是 :
type
Days = (mon, tue, wed, thu, fri, sat, sun);
Letters = set of char;
DaySet = set of days;
Alphabets = set of 'A' .. 'Z';
studentAge = set of 13..20;
设置运算符
您可以在Pascal集上执行以下设置操作.
Sr.No | 操作 | 描述 |
---|---|---|
1 | 联盟 | 这会加入两个集合,并为两个集合中的成员提供一个新集合. |
2 | 差异 | 获取两个集合的差异,并给出一个新集合,其中的元素与任何集合都不相同. |
3 | 交叉点 | 获取两个集合的交集,并给出一个新集合,其中包含两个集合共有的元素. |
4 | 包含 | 集合Q包含在集合Q中,如果P中的所有项目也在Q中,反之亦然. |
5 | 对称差异 | 获取两个集合的对称差异并给出一组元素,在任何一个集合中,而不是在它们的交集中. |
6 | 在 | 它检查会员资格. |
下表显示了Free Pascal支持的所有set运算符.假设 S1 和 S2 是两个字符集,那么 :
S1:= ['a','b' , 'C'];
S2:= ['c','d','e'];
运算符 | 说明 | 示例 |
---|---|---|
+ | 相加 | S1 + S2会得出 ['a','b','c','d' ,'e'] |
- | 两组的差异 | S1-S2将得出 ['a ','b'] |
* | 两组相交 | S1 * S2将得出 [' c'] |
>< | 两组的对称差异 | S1>< S2将得出 ['a','b','d','e'] |
= | 检查两组的相等性 | S1 = S2将得出布尔值False |
<> | 检查不平等两组 | S1<> S2将得出布尔值True |
< = | 包含(检查一组是否是另一组的子集) | S1< = S2将得出布尔值False |
包含 | 包含集合中的元素;基本上它是一个集合的联合和一个相同基本类型的元素 | 包含(S1,['d'])将得出一组 ['a','b','c','d'] |
排除 | 从集合中排除元素;基本上它是一个集合的差异和相同基本类型的元素 | 排除(S2,['d'])将得出一组['c','e'] |
在 | 检查集合中元素的成员资格 | ['e']在S2中给出布尔值True |
示例
以下示例说明了其中一些的使用运算符 :
program setColors;
type
color = (red, blue, yellow, green, white, black, orange);
colors = set of color;
procedure displayColors(c : colors);
const
names : array [color] of String[7]
= ('red', 'blue', 'yellow', 'green', 'white', 'black', 'orange');
var
cl : color;
s : String;
begin
s:= ' ';
for cl:=red to orange do
if cl in c then
begin
if (s<>' ') then s :=s +' , ';
s:=s+names[cl];
end;
writeln('[',s,']');
end;
var
c : colors;
begin
c:= [red, blue, yellow, green, white, black, orange];
displayColors(c);
c:=[red, blue]+[yellow, green];
displayColors(c);
c:=[red, blue, yellow, green, white, black, orange] - [green, white];
displayColors(c);
c:= [red, blue, yellow, green, white, black, orange]*[green, white];
displayColors(c);
c:= [red, blue, yellow, green]><[yellow, green, white, black];
displayColors(c);
end.
编译并执行上述代码时,会产生以下结果 :
[ red , blue , yellow , green , white , black , orange]
[ red , blue , yellow , green]
[ red , blue , yellow , black , orange]
[ green , white]
[ red , blue , white , black]
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付
¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟