pascal中对集合的操作有什么?(要详细点的)

 我来答
菲尔基德
推荐于2018-05-06 · TA获得超过101个赞
知道答主
回答量:36
采纳率:0%
帮助的人:23.8万
展开全部
第九章 集合类型

9.1 集合

9.1 集合

1.集合的定义:
type 类型名=set of 基类型
例如:
type
num=set of char;
var
n:num;

var
n: set of char;

2.集合的表示:
用一组方括号括号一组元素来表示,元素之间用逗号分隔。如:
[A,B,C,D]--有四个枚举量的集合
['A','B','C','D']--有四个字符的集合
[1..20]--包含了1到20中所有整数的集合
[0]--只有一个元素0的单元素集
[]--空集
3.集合的运算:
(1)并(a+b):属于a或属于b
[0..7]+[0..4]的值为[0..7]
(2)交(a*b):既属于a又属于b
[0..7]*[0..4]的值为[0..4]
(3)差(a-b):属于a但不属于b
[0..7]-[0..4]的值为[5..7]
(4)相等(a=b):a,b的元素完全一样
[0..7]=[0..4]的值为false
(5)不等(<>):元素不一样
[0..7]<>[0..4]的值为true
(6)包含于(<=):
[0..7]<=[0..4]的值为false
(7)包含(>=):
[0..7]>=[0..4]的值为true
(8)成员(in):
1 in [0..4]的值为true

4.注意事项:
(1)集合运算相当快,在程序中常用集合表达式来描述复杂的测试。如
A)条件表达式: (ch='T') or (ch='t') or (ch='Y') or (ch='y') 可用集合表达式表示为:
ch in ['T','t','Y','y']
B)if (ch>=20) and (ch<=50) then ...;
可写成:
if ch in [20..50] then ...;
(2)集合类型是一种使用简便,节省内存面又运算速度快的数据类型。
(3)Turbo Pascal规定集合的元素个数不超过256个(当实际问题所需的元素个数大于256时, 可采用布尔数组代替集合类型)。所以如下定义是错误的: var i: set of integer;
(4)集合类型变量不能进行算术运算,了不允许用读/写语句直接输入/输出集合。 所以集合的建立:
A)要通过赋值语句实现;
B)或先初始化一个集合,然后通过并运算向集合中逐步加入各个元素.
(5)集合元素是无序的,所以ord,pred和succ函数不能用于集合类型的变量。

练习:
编程读入两个字符串,然后输出如下信息:
(1)出现在某一个字符串中至少一次的字母和数字;
(2)同时出现在两个字符串中至少一次的字母和数字;
(3)出现在一个字符串中而不出现在另一个字符串中的字母和数字;
(4)不出现在任何字符串中的字母和数字。

返回
追月一族2
2008-08-19 · TA获得超过4148个赞
知道小有建树答主
回答量:861
采纳率:0%
帮助的人:546万
展开全部
1.集合的定义:
type 类型名=set of 基类型

var
n: set of char;
2.集合的表示:
用一组方括号括号一组元素来表示,元素之间用逗号分隔。
3.集合的运算:
(1)并(a+b):属于a或属于b
(2)交(a*b):既属于a又属于b
(3)差(a-b):属于a但不属于b
(4)相等(a=b):a,b的元素完全一样
(5)不等(<>):元素不一样
(6)包含于(<=):
(7)包含(>=):
(8)成员(in):
4.注意事项:
(1)集合运算相当快,在程序中常用集合表达式来描述复杂的测试。
(2)集合类型是一种使用简便,节省内存面又运算速度快的数据类型。
(3)Turbo Pascal规定集合的元素个数不超过256个(当实际问题所需的元素个数大于256时, 可采用布尔数组代替集合类型)。
(4)集合类型变量不能进行算术运算,了不允许用读/写语句直接输入/输出集合。 所以集合的建立:
A)要通过赋值语句实现;
B)或先初始化一个集合,然后通过并运算向集合中逐步加入各个元素.
(5)集合元素是无序的,所以ord,pred和succ函数不能用于集合类型的变量。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式