c语言C++集合运算代写

集合是具有某种特定性质的事物的总体。这里的“事物”可以是人,物品,也可以是数学元素。常用集合运算分双目运算和单目运算。

双目运算有:

和集 [&],两个或两个以上的集合的所有元素组成一个新的集合,称为和集。示例为:(1,2,3)[&](1,3,4)=1 2 3 1 3 4

并集 [+],两个或两个以上集合并在一起并去除其中重复元素的集合,称为并集。示例为:(1,2,3,5,9)[+](1,3,4)=1 2 3 5 9 4

差集 [-],第一个集合减去第二个集合所包含的元素,称为差集。示例为:(1,2,3,5,9)[-](1,3,4)=2 5 9

交集 [*],两个集合中都含有的元素。示例为:(1,2,3)[*](1,3,4)=1 3

补集 [/],两个集中非共同元素组成的集合(也叫反交集)。示例为:(1,2,3)[/](1,3,4)=2 4

逆集 [\],第二个集合减去第一个集合所包含的元素,称为逆集(也叫反差集)。示例为:(1,2,3)[\](1,3,4)=4

平集 [!],两个集合的和集中,只出现一次的元素组成的集合称为平集。示例为:(1,2,3,2,5,6,2,1,4,3,2)[!](4,5,9,2,3,5,1,7)=6 9 7

频集 [!!],两个集合的和集中,出现两次以上的元素组成的集合称为频集。示例为:(1,2,3,2,5,6,2,1,4,3,2)[!!](4,5,9,2,3,5,1,7)=1 2 3 5 4

单目运算有:

差集[-],去除数集中重复的元素。示例为:(1,2,3,1,4,2,5)[-]=1 2 3 4 5

求和运算符号 [++],集合中所有元素的总和。示例为:前置操作符式 [++](1,2,3,5,9)=20, (1,4,7)[++]=12。该操作符也可以后置于集合后面。如 (1,2,3,5,9) [++]=20

内积 [**],集合中所有元素的乘积。示例为:[**](2,5;4,2;5,4)=1600

算术平均值 [~],集合中所有元素的总和并除以元素的个数所得的值。示例为:前置操作符式 [~](1,2,3)=2,后置式 (2.5,3,9)[~]=4.8333

标准方差 [~~],样本方差的算术平方根叫做样本标准差。这也是一个可以前置或后置的操作符。示例为: (1,5,3;6,8,2;9,1,6)[~~]=2.9627, [~~](1,5,3;6,8,2;9,1,6)=2.9627

n项移动平均 [~n],对数集进行n项移动平均。这也是一个可以前置或后置的操作符。示例为: 2项移动平均 [~2](1,2,3,2,4,2,5)=1.5 2.5 2.5 3 3 3.5,3项移动平均 (1,2,3,2,4,2,5)[~3]=2 2.3333 3 2.6667 3.6667

方差 [~^],样本中各数据与样本平均数的差的平方和的平均数叫做样本方差。可以前置或后置的操作符。示例为: (1,5,3;6,8,2;9,1,6)[~^]=8.7778, [~^](1,5,3;6,8,2;9,1,6)=8.7778

频数表 [^],列出数集中元素出现的次数。该单目运算符有四种表现形式。

[^]或[^1] 按出现次数降序排列

[^2] 按出现次数升序排列

[^3] 按元素从大到小排列

[^4] 按元素从小到大排列

矩阵求逆 [-1],N阶方阵A、B,若有AB=1则称B是A的逆矩。该单目运算符可放在操作数前,也可放在操作数后面。示例为:

(1,5,3;6,8,2;9,1,6)[-1]= 或 [-1](1,5,3;6,8,2;9,1,6)=

-0.1901 0.1116 0.0579

0.0744 0.0868 -0.0661

中值 [|],把集合从小到大排序,处在中间的值称为中值,也叫中间值。示例为:(1,2,3,2,5,6,2,1,4,3,2)[|]=3.5,[|](1,2,3,2,4,2,5)=3

众数 [||],在集合中出现次数最多的数称为众数,也叫典型值。示例为:

[||](1,2,3,2,1,3,6,5,2,4,8,5,6,9,5,4,2)=2 4(出现的次数)

(1,2,3,2,1,3,6,5,2,4,8,5,6,9,5,4,2,5)[||]=2 4(出现的次数),5 4(出现的次数)

累加数列 [&+],通过数列间各数据的依个累加得到新的数据与数列,单目运算符, 可放在操作数前,也可放在操作数后面。示例为:[&+](2,5,1,6,4,3)=2 7 8 14 18 21,(2,5,1,6,4,3)[&+]=2 7 8 14 18 21

累减数列 [&-],数列中后一个数减前一个数组成的新数列(累加数列的逆运算)。示例为:(1,2,3,4,5,6,7,8,9)[&-]=1 1 1 1 1 1 1 1 1

倒数数列 [&/],取得数集所有元素的倒数组成的集合。示例为:

单目运算符, 可放在操作数前,也可放在操作数后面

(2,5,1,6,4,3)[&/]=0.5 0.2 1 0.1667 0.25 0.3333

[&/](2,5,1,6,4,3)=0.5 0.2 1 0.1667 0.25 0.3333

倒数和 [/+],数集中所有元素的倒数的总和。示例为:[/+](1,2,3,5,4)=2.2833

几何平均值 [*~],集合的内积的元素个数的倒数次方(也叫级均值)。单目运算符, 可放在操作数前,也可放在操作数后面。示例为: (1,4,7)[*~]=3.0366, [*~](1,2,3,5,9)=3.0639

调和平均值 [/~],集合中所有元素的倒数的平均数的倒数(也叫谐均值)。单目运算符, 可放在操作数前,也可放在操作数后面。示例为: (1,4,7)[/~]=2.1538, [/~](1,2,3,5,9)=2.3316

最小值 [<],集合中最小的数。单目运算符, 可放在操作数前,也可放在操作数后面。示例为: [>](2,6,4,5)=2,(9,5,18,2,6)[>]=2

最大值 [>],集合中最大的数。单目运算符, 可放在操作数前,也可放在操作数后面。示例为: [>](2,6,4,5)=6,(9,5,18,2,6)[>]=18

从大到小排列 [>>],把数集按照从大到小的顺序排列。单目运算符, 可放在操作数前,也可放在操作数后面。示例: (2,5,1,6,4,3)[>>]=6 5 4 3 2 1 ,[>>](2,5,1,6,4,3)=6 5 4 3 2 1

从小到大排列 [<<],把数集按照从小到大的顺序排列。单目运算符, 可放在操作数前,也可放在操作数后面。示例为: (2,5,1,6,4,3)[<<]=1 2 3 4 5 6,[<<](2,5,1,6,4,3)=1 2 3 4 5 6

反转 [<>],把数集所有元素前后倒转。可前置或后置操作符。示例: (1,2,3)[<>]=3 2 1 ,[<>](1,2,3)=3 2 1

极差 [><],集合中最大数与最小数之间的差距,也就是最大值减最小值所得的值。示例:[><](2,5;4,2;5,4)=3

转置 [T],对数列或矩阵转置(注与反转的区别)。示例:

转置数列 (1,2,3)[t]=1;2;3

转置矩阵 (1,2;3,4)[t]=1 3;2 4

数据个数 [N],获取数集中元素的个数。示例: (1,2,3,4,5)[n]=5,[N](1,2,3,5,4)=5

第n个元素值 [n],取出数列中第n个元素的值。示例:(1,2,5,3,6)[3]=5

第i行第j列值 [i,j],取得矩阵中位置(i,j)处的元素值。示例:(1,5,3;6,8,2;9,1,6)[2,2]=8

行数 [R],取得矩阵的行数。示例:(1,5,3;6,8,2;9,1,6)[R]=3

取出行 [Ri],取得矩阵中第i行。示例:(4,5;6,7;5,2)[r2]=6 7

取出部分行 [Ri,j],从矩阵第i 行开始取j行。示例:(4,5;6,7;5,2)[r2,2]=6 7;5 2

添加行 [+R],把第二个矩阵的所有行加到第一个矩阵的后面。示例:(1,2,3)[+r](4,5,6)=1 2 3; 4 5 6,(1,2,3;7,8,9)[+r](4,5,6)=1 2 3; 7 8 9; 4 5 6

添加一行 [+Ri],把第二个矩阵的第i行加到第一个矩阵的后面。示例:(4,5,6;7,5,2)[+r2](1,1,1;2,2,2)=4 5 6; 7 5 2; 2 2 2

行交换或替换 [Ri=Rj],第i行与第j行交换第一个矩阵i行替换成第二个矩阵的j 行。示例:

行交换(单目运算) (4,5,6;7,5,2)[r1=r2]=7 5 2; 4 5 6

行替换(双目运算) (4,5,6;7,5,2)[r1=r1](1,1,1;2,2,2)=1 1 1; 7 5 2

列数 [C],取得矩阵的列数。示例:(1,5,3;6,8,2;9,1,6)[c]=3

取出列 [Ci],取得矩阵中第i 列。示例:(4,5,6;7,5,2)[c2]=5;5

取出部分列 [Ci,j],从矩阵第i 列开始取j列。示例:(4,5,6;7,5,2)[c2,2]=5 6; 5 2

添加列 [+C] ,把第二个矩阵的所有列加到第一个矩阵的后面。示例:(1;2;3)[+c](4;5;6)= (1;2;3)[+c](4,5;6,7;5,2)=1 4 1 4 5; 2 5 2 6 7; 3 6 3 5 2

添加一列 [+Ci],把第二个矩阵的第i列加到第一个矩阵的后面。示例:(1;2;3)[+c2](4,5;6,7;5,2)=1 5; 2 7; 3 2,(1;2;3)[+c1](4,5;6,7;5,2)=1 4; 2 6; 3 5

列交换或替换 [Ci=Cj],第i列与第j列交换第一个矩阵i列替换成第二个矩阵的j 列。示例:

列交换(单目运算) (4,5,6;7,5,2)[c1=c3]=6 5 4; 2 5 7

列替换(双目运算) (4,5,6;7,5,2)[c1=c1](1,1;2,2)=1 5 6; 2 5 2

基本要求

编程完成集合运算器的制作。

(1)能够实现集合元素的输入。

(2)实现以上所列出的集合的双目运算。

(3)实现以上所列出的集合的单目运算。

(4)实现集合元素与集合之间所属关系的判断。

(5)以上操作可以对整型、字符型、字符串型元素的集合都有效。

设计提示

本任务如果没有完成要求(5),则难度系数降为3级。

 

转载于:https://www.cnblogs.com/sourcecode2014/p/3305460.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值