信息学竞赛Pascal语言:集合类型(八)(3)
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)不出现在任何字符串中的字母和数字。
往期最新阅读:信息学竞赛Pascal语言:函数和过程(六)
更多内容,请参加合肥奥数网“杯赛竞赛”频道。